public void EvaluateEnvironmentTiles() { foreach (GameObject tile in environmentTiles) { EnvironmentTileControl_3d tileControl = tile.GetComponent <EnvironmentTileControl_3d>(); // evaluate current tile and neighbors EvaluateTileAndNeighbors( tileControl, tileControl.GetTileNeighborsAsList() ); } foreach (GameObject tile in environmentTiles) { EnvironmentTileControl_3d tileControl = tile.GetComponent <EnvironmentTileControl_3d>(); tileControl.ApplyUpdateFromTempValues(); tileControl.SetAppearanceFromState(); } }