private void flushRemoveBuffer() { while (!removeBuffer.isEmpty()) { Entity fakeEntToDie = removeBuffer.remove(); Entry<Entity> entry = grid.get(fakeEntToDie); AbsPos pos = entry.getPosition(); Entity entToDie = entry.getContents(); if (entToDie instanceof BotEntity) { BotEntity botToDie = ((BotEntity) entToDie); botIndex.remove(botToDie.getID()); } grid.set(pos, null); MatchLog.removeEntity(entToDie); } }
private void flushAddBuffer() { while (!addBuffer.isEmpty()) { Entry<Entity> entry = addBuffer.remove(); Entity toAdd = entry.getContents(); AbsPos addPos = entry.getPosition(); assert (!grid.contains(toAdd)); assert (grid.get(addPos) == DEBUG_PENDING_CHANGE_PLACEHOLDER); if (toAdd instanceof BotEntity) { BotEntity newBot = (BotEntity) toAdd; botIndex.put(newBot.getID(), addPos); } grid.set(addPos, toAdd); MatchLog.addEntity(toAdd, addPos); } }