public static void LoadGameWorld(string GameWorldName) { gameWorldName = GameWorldName; string fileText = File.ReadAllText("C:/AscensionGameFiles/Worlds/" + gameWorldName + ".txt"); int fileLength = (fileText.Length <= tileArray.GetLength(0) * tileArray.GetLength(1)) ? fileText.Length : tileArray.GetLength(0) * tileArray.GetLength(1); for (int n = 0; n < fileLength; n++) { int i = n / tileArray.GetLength(1); int j = n % tileArray.GetLength(1); if (fileText[n] == 'E') { tileArray[i, j] = new earthTile(new Vector2(i * tile.tileSize, j * tile.tileSize)); } else if (fileText[n] == 'A') { tileArray[i, j] = new airTile(new Vector2(i * tile.tileSize, j * tile.tileSize)); } else if (fileText[n] == 'G') { tileArray[i, j] = new goldTile(new Vector2(i * tile.tileSize, j * tile.tileSize)); } else if (fileText[n] == 'W') { tileArray[i, j] = new waterTile(new Vector2(i * tile.tileSize, j * tile.tileSize)); } } }
public static void generateOreVein() { int veinLength = Game1.randomGenerator.Next(maxVeinLength); int startX = Game1.randomGenerator.Next(tileArray.GetLength(0)); int startY = Game1.randomGenerator.Next(10) + seaLevelWorldHeight / tile.tileSize; for (int i = 0; i < veinLength; i++) { if (startX > 0 && startY > seaLevelWorldHeight / tile.tileSize && startX < tileArray.GetLength(0) && startY < tileArray.GetLength(1)) { tileArray[startX, startY] = new goldTile(new Vector2(startX * tile.tileSize, startY * tile.tileSize)); } int direction = Game1.randomGenerator.Next(4); switch (direction) { case 0: startY--; break; case 1: startX++; break; case 2: startY++; break; case 3: startX--; break; default: break; } } }