public void Move(int x, int y) { int newX = (int)WorldMapData.CurrentPos.x + x; int newY = (int)WorldMapData.CurrentPos.y + y; WorldMapData.CurrentPos = new Vector2(newX, newY); WorldMapBuilder.UpdateDiscoveredMap(WorldMapData, newX, newY); switch (WorldMapData.WorldMapInfos[newX, newY]) { case WorldMapCellType.Battleground: WorldMapData.WorldMapInfos[newX, newY] = WorldMapCellType.Empty; GenerateBattleground(WorldMapBuilder.WorldMap[newX, newY]); break; case WorldMapCellType.Chest: WorldMapData.WorldMapInfos[newX, newY] = WorldMapCellType.Empty; GenerateChest(); break; case WorldMapCellType.NewTeamMember: WorldMapData.WorldMapInfos[newX, newY] = WorldMapCellType.Empty; GenerateNewTeamMember(); break; default: break; } if (WorldMapData.WorldMapInfos[newX, newY] != WorldMapCellType.City) { WorldMapData.WorldMapInfos[newX, newY] = WorldMapCellType.Empty; } WorldMapBuilder.Generate(WorldMapData); WorldMapMoveButtonManager.UpdateButtons(); }