public void AddLocations(ref Map map, int x, int y) { for (int i = 0; i < this.width; i++) { for (int j = 0; j < this.height; j++) { Blockade[] blockades = new Blockade[4]; // North Wall if (this.blockades[i, j, 0] != null) { blockades[0] = this.blockades[i, j, 0]; } else if (j == 0 && isEnclosed) { blockades[0] = new Wall("wall", true, 0); } else { blockades[0] = new None("none", false, 0); } // East Wall if (this.blockades[i, j, 1] != null) { blockades[1] = this.blockades[i, j, 1]; } else if (i == width - 1 && isEnclosed) { blockades[1] = new Wall("wall", true, 1); } else { blockades[1] = new None("none", false, 1); } // South if (this.blockades[i, j, 2] != null) { blockades[2] = this.blockades[i, j, 2]; } else if (j == this.height - 1 && isEnclosed) { blockades[2] = new Wall("wall", true, 2); } else { blockades[2] = new None("none", false, 2); } // West if (this.blockades[i, j, 3] != null) { blockades[3] = this.blockades[i, j, 3]; } else if (i == 0 && isEnclosed) { blockades[3] = new Wall("wall", true, 3); } else { blockades[3] = new None("none", false, 3); } Location location = new TempleRoom(this.name, blockades, discription); if (this.items[i, j] != null) { location.GetItems().Add(this.items[i, j].GetName(), this.items[i, j]); } if (this.actors[i, j] != null) { location.SetEnemy(actors[i, j]); } map.AddLocation(location, i + x, j + y); } } }
public void SetLastRoomVisited(TempleRoom room) { this.room = room; }