Пример #1
0
        private void AddContainer(ContainerData data)
        {
            if (ItemManager.ContainerData.ContainsKey(data.Name))
            {
                DialogResult result = MessageBox.Show(data.Name + " already exists. Overwrite it?", "Container Exists",
                                                      MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (result != DialogResult.Yes)
                    return;

                ItemManager.ContainerData[data.Name] = data;
                LoadContainers();
                return;
            }

            ItemManager.ContainerData.Add(data.Name, data);
            DetailList.Items.Add(data);
        }
Пример #2
0
        public override object Clone()
        {
            var data = new ContainerData
            {
                Name = _data.Name,
                Difficulty = _data.Difficulty,
                IsTrapped = _data.IsTrapped,
                IsLocked = _data.IsLocked,
                TrapName = _data.TrapName,
                KeyName = _data.KeyName,
                KeyType = _data.KeyType,
                KeysRequired = _data.KeysRequired,
                MinGold = _data.MinGold,
                MaxGold = _data.MaxGold
            };

            foreach (KeyValuePair<string, string> pair in _data.ItemCollection)
                data.ItemCollection.Add(pair.Key, pair.Value);

            return new Container(data);
        }
Пример #3
0
 public Container(ContainerData data)
     : base(data.Name, "")
 {
     _data = data;
 }
Пример #4
0
 private void FormCancelButtonClick(object sender, EventArgs e)
 {
     ContainerData = null;
     CloseForm();
 }
Пример #5
0
        private void OkButtonClick(object sender, EventArgs e)
        {
            if (!IsValid())
            {
                MessageBox.Show(
                    "Name cannot be empty. Key details must be specified if Locked mode is enabled. Trap details must be specified if Trapped mode is enabled. Minimum gold value cannot be greater than maximum gold value.",
                    "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            var data = new ContainerData
            {
                Name = NameBox.Text,
                IsLocked = LockCheck.Checked,
                IsTrapped = TrapCheck.Checked,
                MinGold = (int) MinGoldBox.Value,
                MaxGold = (int) MaxGoldBox.Value
            };

            if (LockCheck.Checked)
            {
                data.Difficulty = (Difficulty) Enum.GetValues(typeof(Difficulty)).GetValue(LockDifficultyBox.SelectedIndex);
                data.KeyName = KeyNameBox.Text;
                data.KeyType = KeyTypeBox.Text;
                data.KeysRequired = (int) KeysNeededBox.Value;
            }

            if (TrapCheck.Checked)
                data.TrapName = TrapNameBox.Text;

            ContainerData = data;
            CloseForm();
        }