public void AddRoomExit(XYZ normal, XYZ exitpos, RoomData room) { bool contains = false; for (int i = 0; i < Rooms.Count; i++) { if (Rooms[i] == room) { room = Rooms[i]; contains = true; break; } } if (!contains) { Rooms.Add(room); } for (int i = 0; i < Exits.Count; i++) { if (posEquals(Exits[i].Position, exitpos)) { Exits[i].Rooms.Add(room); room.Exits.Add(Exits[i]); return; } } var e = new ExitData(exitpos, room); e.Normal = normal; Exits.Add(e); room.Exits.Add(e); }
private void ok_button_Click(object sender, RoutedEventArgs e) { bool hasexc = false; foreach (ListBoxItem lbi in lister.Items) { try { List <object> tb = (List <object>)lbi.Tag; float val = float.Parse(((TextBox)tb[1]).Text); float val2 = float.Parse(((TextBox)tb[2]).Text); ExitData data = ((ExitData)tb[0]); data.Weight2 = val; data.Weight1 = val2; } catch (Exception k) { hasexc = true; MessageBox.Show(k.StackTrace); MessageBox.Show($"Wrong format for floating number, try again."); } } hasexc = hasexc && !checkWeights(); if (!hasexc) { this.DialogResult = true; } }