public Room LeftRoom(List<Room> rooms, Room current, Level level) { int x = current.roomX; int y = current.roomY; int z = current.roomZ; if (x != level.rows[y].columns.Count() - 1) { x = System.Threading.Interlocked.Decrement(ref x); } foreach (Room r in rooms) { if (r.roomX == x & r.roomY == y & r.roomZ == z) { return r; } } return current; }
private void button3_Click(object sender, EventArgs e) { if (level != null) { if (currentRoom != null) currentRoom = level.UpRoom(rooms, currentRoom, level); string current = currentRoom.roomIndex.ToString(); //MessageBox.Show(currentRoom.roomIndex + "," + currentRoom.roomName + "x=" + currentRoom.roomX + " y=" + currentRoom.roomY); string path = AppDomain.CurrentDomain.BaseDirectory + "Content/Rooms/MAP_dungeon_prison_" + current + ".xml"; ComboBox1.SelectedIndex = currentRoom.roomIndex; if (File.Exists(path)) LoadRoom(path); } else MessageBox.Show("No level has been loaded"); }
public Room DownRoom(List<Room> rooms, Room current, Level level) { int x = current.roomX; int y = current.roomY; int z = current.roomZ; if (y != level.rows.Count() - 1) { y = System.Threading.Interlocked.Increment(ref y); } foreach (Room r in rooms) { if (r.roomX == x & r.roomY == y & r.roomZ == z) { return r; } } return current; }
public Room StartRoom(List<Room> rooms, Room current) { foreach (Room r in rooms) { if (r.startRoom == true) { return r; } } return current; }
private void pasteToolStripMenuItem_Click(object sender, EventArgs e) { if (ComboBox1.SelectedItem != null && copyRoom != null) { currentRoom = copyRoom; string path = AppDomain.CurrentDomain.BaseDirectory + "Content/Rooms/MAP_dungeon_prison_" + currentRoom.roomIndex + ".xml"; if (File.Exists(path)) LoadRoom(path); } }
private void LoadStartRoom() { if (currentRoom != null) currentRoom = level.StartRoom(rooms, currentRoom); string current = currentRoom.roomIndex.ToString(); //MessageBox.Show(currentRoom.roomIndex + "," + currentRoom.roomName + "x=" + currentRoom.roomX + " y=" + currentRoom.roomY); string path = AppDomain.CurrentDomain.BaseDirectory + "Content/Rooms/MAP_dungeon_prison_" + current + ".xml"; //ComboBox1.SelectedIndex = currentRoom.roomIndex; if (File.Exists(path)) LoadRoom(path); }
private void LoadLevel(string path) { rowcount = 0; columncount = 0; roomcount = 0; rooms = new List<Room>(); System.Xml.Serialization.XmlSerializer ax = default(System.Xml.Serialization.XmlSerializer); Stream txtReader = File.Open(path, FileMode.Open); //TextReader txtReader = File.OpenText(filePath); ax = new System.Xml.Serialization.XmlSerializer(typeof(Level)); level = (Level)ax.Deserialize(txtReader); for (int r = 0; r <= level.rows.Count() - 1; r++) { if (level.rows[r] != null) rowcount += 1; for (int i = 0; i <= level.rows[r].columns.Length - 1; i++) { if (level.rows[r].columns[i] != null) columncount += 1; if (level.rows[r].columns[i].RoomIndex != 0) { roomcount += 1; rooms.Add(new Room(level.rows[r].columns[i].RoomIndex, level.rows[r].columns[i].FilePath, level.rows[r].columns[i].RoomStart)); rooms[roomcount - 1].AssignRoomPosition(i, r, 0); if (level.rows[r].columns[i].RoomStart == true) currentRoom = rooms[roomcount - 1]; } //Row 1st this.TextBox4.Text = level.rows[0].columns[0].RoomIndex.ToString(); this.TextBox5.Text = level.rows[0].columns[1].RoomIndex.ToString(); this.TextBox6.Text = level.rows[0].columns[2].RoomIndex.ToString(); this.TextBox7.Text = level.rows[0].columns[3].RoomIndex.ToString(); this.TextBox8.Text = level.rows[0].columns[4].RoomIndex.ToString(); this.TextBox9.Text = level.rows[0].columns[5].RoomIndex.ToString(); this.TextBox10.Text = level.rows[0].columns[6].RoomIndex.ToString(); this.TextBox11.Text = level.rows[0].columns[7].RoomIndex.ToString(); //Row 2nd this.TextBox12.Text = level.rows[1].columns[0].RoomIndex.ToString(); this.TextBox13.Text = level.rows[1].columns[1].RoomIndex.ToString(); this.TextBox14.Text = level.rows[1].columns[2].RoomIndex.ToString(); this.TextBox15.Text = level.rows[1].columns[3].RoomIndex.ToString(); this.TextBox16.Text = level.rows[1].columns[4].RoomIndex.ToString(); this.TextBox17.Text = level.rows[1].columns[5].RoomIndex.ToString(); this.TextBox18.Text = level.rows[1].columns[6].RoomIndex.ToString(); this.TextBox19.Text = level.rows[1].columns[7].RoomIndex.ToString(); //Row 3rd this.TextBox20.Text = level.rows[2].columns[0].RoomIndex.ToString(); this.TextBox21.Text = level.rows[2].columns[1].RoomIndex.ToString(); this.TextBox22.Text = level.rows[2].columns[2].RoomIndex.ToString(); this.TextBox23.Text = level.rows[2].columns[3].RoomIndex.ToString(); this.TextBox24.Text = level.rows[2].columns[4].RoomIndex.ToString(); this.TextBox25.Text = level.rows[2].columns[5].RoomIndex.ToString(); this.TextBox26.Text = level.rows[2].columns[6].RoomIndex.ToString(); this.TextBox27.Text = level.rows[2].columns[7].RoomIndex.ToString(); } } txtReader.Close(); TextBox32.Text = rowcount.ToString(); TextBox33.Text = columncount.ToString(); Label16.Text = roomcount.ToString(); }
private void copyToolStripMenuItem_Click(object sender, EventArgs e) { if (ComboBox1.SelectedItem != null) { int id = ComboBox1.SelectedIndex; currentRoom = level.SelectRoom(rooms, id); copyRoom = currentRoom; } }
private void ComboBox1_SelectedIndexChanged(object sender, EventArgs e) { string current = ""; int x = 0; for (int i = 0; i <= ComboBox1.Items.Count; i++) { x = ComboBox1.SelectedIndex; current = x.ToString(); } if (checkBox1.Checked == false) { string path = AppDomain.CurrentDomain.BaseDirectory + "Content/Rooms/MAP_dungeon_prison_" + current + ".xml"; if (map != null) foreach (Room r in rooms) if (r.roomIndex == x) currentRoom = r; if (File.Exists(path)) LoadRoom(path); if (currentRoom.startRoom) button8.Visible = true; else button8.Visible = false; } }
private void clearToolStripMenuItem1_Click(object sender, EventArgs e) { //Clear room if (currentRoom != null) { currentRoom = null; GenerateNewMap(); } }