Я пытаюсь построить мир на основе плиток, используя следующий класс менеджера мира:
List<Tile> tiles = new List<Tile>();
for (int y = 0; y <= worldHeight-1; y++) {
for (int x = 0; x <= worldWidth-1; x++) {
Tile tileToInstantiate = (Tile) Resources.Load("Prefabs/Tile", typeof(Tile));
Instantiate(tileToInstantiate, new Vector2(x, y), Quaternion.identity, world);
tiles.Add(tileToInstantiate);
}
}
foreach (Tile aTile in tiles) {
Debug.Log("D2: " + aTile.GetTerrainType());
}
Класс плиток определяется следующим образом:
private void Awake() {
int random = (int)Random.Range(0, 100);
if (random <= GameManager.instance.worldManager.amountOfWater){
terrainType = TerrainType.Water; } else {
terrainType = TerrainType.Land;}
Debug.Log("D1: " + GetTerrainType());
spriteRenderer = GetComponent<SpriteRenderer>();
switch (terrainType) { {
case TerrainType.Land:
spriteRenderer.sprite = GameManager.instance.tileSprites[0];
break;
case TerrainType.Water:
spriteRenderer.sprite = GameManager.instance.tileSprites[1];
break;
Однако, когда я запускаюВ коде возникают следующие проблемы: плитки показывают правильные спрайты и типы местности в первом операторе отладки.Но во втором операторе отладки записи не такие, как в первом.Где ошибка?