@Override public Tile removeTile(int x, int y) { Tile tmp = getTile(x,y); setTile(x,y,null); return tmp; }
@Override public void setTile(int x, int y, Tile tile) { ShortVec2 groupPos = getKey().set((int)Math.floor(x / (float) TileGroup.CHUNK_STEP), (int)Math.floor(y / (float) TileGroup.CHUNK_STEP)); TileGroup tg = tileGroups.get(groupPos); if (tg == null) { tg = new TileGroup(groupPos.x * TileGroup.CHUNK_STEP, groupPos.y * TileGroup.CHUNK_STEP); tileGroups.put(groupPos, tg); } tg.setTile(x, y, tile); scope.extendTo(x, y); parent.markDirty(); }