private void RemoveNegativeTileTextureId(Point tile) { if (TileDictionary[tile].TextureId == -1) { TileDictionary.Remove(tile); } }
public void SetUnoccupied(Vector2Int position, CollisionLayer layer) { var tile = GetTile(position); if (tile == null) { return; } tile.OccupiedLayer &= (tile.CollisionLayerIncrement == CollisionLayer.None ? ~layer : ~tile.CollisionLayerIncrement); if (tile.IsEmpty()) { _tiles.Remove(position); } }
public virtual void RemoveTile(EditorGridPosition info) { tileDictionary.Remove(info.gridPosition); info.worldUnitHeight = info.baseWorldUnitHeight; info.savedWorldUnitHeight = info.baseWorldUnitHeight; DestroyImmediate(info.tile.gameObject); }
/// <summary> /// Removes tile at given position /// </summary> /// <param name="position"></param> public void RemoveTile(Point position) { if (position == new Point(-1, -1)) { return; } if (TileDictionary.ContainsKey(position)) { TileDictionary.Remove(position); return; } }
public void RemoveTile(Vector3Int cellPos) { if (Application.isPlaying || !Application.isEditor) { return; } if (tiles.ContainsKey(cellPos)) { TileData tile = tiles[cellPos]; tiles.Remove(cellPos); DestroyImmediate(tile.obj); } }
public void RefreshTiles() { var toRemove = new List <Vector2Int>(); foreach (var tile in _tiles.Values) { if (tile.IsEmpty()) { toRemove.Add(tile.Position); } } foreach (var position in toRemove) { _tiles.Remove(position); } }