private void OnCellFeatureChanged(HexPropertyChangedData <CellFeature> data) { foreach (var chunk in GetAffectedChunks(data.Cell)) { chunk.Refresh(TerrainRefreshType.Features | TerrainRefreshType.Oases); } }
private void OnCellVegetationChanged(HexPropertyChangedData <CellVegetation> data) { foreach (var chunk in GetAffectedChunks(data.Cell)) { chunk.Refresh(TerrainRefreshType.Features | TerrainRefreshType.Marshes); } }
private void OnCellRoadStatusChanged(HexPropertyChangedData <bool> data) { foreach (var chunk in GetAffectedChunks(data.Cell)) { chunk.Refresh(TerrainRefreshType.Roads); } }
private void OnCellShapeChanged(HexPropertyChangedData <CellShape> data) { TerrainRefreshType refreshFlags = TerrainRefreshType.Heightmap | TerrainRefreshType.Features; if ((data.OldValue == CellShape.Mountains) != (data.NewValue == CellShape.Mountains)) { refreshFlags |= TerrainRefreshType.Alphamap; } foreach (var chunk in GetAffectedChunks(data.Cell)) { chunk.Refresh(refreshFlags); } }
private void OnCellTerrainChanged(HexPropertyChangedData <CellTerrain> data) { TerrainRefreshType refreshFlags = TerrainRefreshType.Alphamap | TerrainRefreshType.Features; if (data.OldValue.IsWater() != data.NewValue.IsWater()) { refreshFlags |= TerrainRefreshType.Water | TerrainRefreshType.Heightmap; } if (data.NewValue.IsWater()) { refreshFlags |= TerrainRefreshType.Water; } foreach (var chunk in GetAffectedChunks(data.Cell)) { chunk.Refresh(refreshFlags); } }