Exemplo n.º 1
0
        public AbilityActionCollection(DotaAbility ability)
        {
            Ability = ability;
            KeyValue kv = ability.KeyValue["Modifiers"];

            if (kv == null)
            {
                kv = new KeyValue("Modifiers");
            }
            Modifiers = new DotaScriptCollection <DotaModifier>(kv);

            kv = ability.KeyValue["AbilitySpecial"];
            if (kv == null)
            {
                kv = new KeyValue("AbilitySpecial");
            }
            Variables = new DotaScriptCollection <BaseActionVariable>(kv);
        }
Exemplo n.º 2
0
        private void okButton_Click(object sender, EventArgs e)
        {
            if (!String.IsNullOrEmpty(nameTextBox.Text))
            {

                switch(dialogType)
                {
                    case DotaType.Hero:
                        MessageBox.Show("Dota 2 does not currently support custom heroes.");
                        break;
                    case DotaType.Unit:
                        DotaUnit unit = new DotaUnit(nameTextBox.Text);
                        unit.BaseClass = DEFAULT_UNIT_CLASS;
                        if (objectListBox.SelectedIndex != -1) unit.BaseClass = objectListBox.SelectedItem.ToString();
                        unit.ObjectInfo.ObjectClass = DotaDataObject.DataObjectInfo.ObjectDataClass.Custom;
                        DotaData.AllUnits.Add(unit);
                        break;
                    case DotaType.Ability:
                        DotaAbility ability = new DotaAbility(nameTextBox.Text);
                        ability.BaseClass = DEFAULT_ABILITY_CLASS;
                        if (objectListBox.SelectedIndex != -1) ability.BaseClass = objectListBox.SelectedItem.ToString();
                        ability.ObjectInfo.ObjectClass = DotaDataObject.DataObjectInfo.ObjectDataClass.Custom;
                        DotaData.AllAbilities.Add(ability);
                        break;
                    case DotaType.Item:
                        DotaItem item = new DotaItem(nameTextBox.Text);
                        item.BaseClass = DEFAULT_ITEM_CLASS;
                        if (objectListBox.SelectedIndex != -1) item.BaseClass = objectListBox.SelectedItem.ToString();
                        item.ObjectInfo.ObjectClass = DotaDataObject.DataObjectInfo.ObjectDataClass.Custom;
                        DotaData.AllItems.Add(item);
                        break;
                }
         
                this.DialogResult = DialogResult.OK;
                this.Close();
            }
            else
            {
                switch (dialogType)
                {
                    case DotaType.Hero:
                        MessageBox.Show("Please enter a valid hero name.");
                        break;
                    case DotaType.Unit:
                        MessageBox.Show("Please enter a valid unit name.");
                        break;
                    case DotaType.Ability:
                        MessageBox.Show("Please enter a valid ability name.");
                        break;
                    case DotaType.Item:
                        MessageBox.Show("Please enter a valid item name.");
                        break;
                }
            }
            
                
            
        }