示例#1
0
 public void addReward(Reward reward)
 {
     if (m_rewards == null)
     {
         m_rewards = new List<Reward>();
     }
     m_rewards.Add(reward);
 }
        public DlgRewards()
        {
            InitializeComponent();

            m_reward = null;
            m_codeSearch = new CodeDescSearch(guiCodeTxt, guiCodeDescriptionTxt, guiCodeSearchBtn);
            guiTypeCbo.Items.Clear();
            CommonTools.Enumeration.AddSortedByName<CommonTools.RewardType>(guiTypeCbo);
            guiTypeCbo.SelectedIndex = 0;
        }
        /// <summary>
        /// Validate the entered data and close the dialog
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void onOk(object sender, EventArgs e)
        {
            m_reward = new Reward();
            /*if (m_reward == null)
            {
                m_reward = new Reward();
            }
            else
            {
                m_reward.clear();
            }*/
            RewardType rewardType = (RewardType)guiTypeCbo.SelectedItem;
            m_reward.setRewardType(rewardType);
            switch (rewardType)
            {
                case RewardType.Award_Skill:
                    m_reward.setValue(guiCodeTxt.Text);
                    break;
                case RewardType.Credits:
                case RewardType.Explore_XP:
                case RewardType.Combat_XP:
                case RewardType.Trade_XP:
                    m_reward.setValue(guiAmountTxt.Text);
                    break;
                case RewardType.Faction:
                    m_reward.setValue(guiAmountTxt.Text);
                    m_reward.setFlag(guiCodeTxt.Text);
                    break;
                case RewardType.Item_ID:
                    m_reward.setValue(guiCodeTxt.Text);
                    break;
                case RewardType.Advance_Mission:
                    m_reward.setValue(guiCodeTxt.Text);
                    break;
                case RewardType.Hull_Upgrade:
                case RewardType.Run_Script:
                    m_reward.setValue(guiAmountTxt.Text);
                    break;
            }

            String error;
            m_reward.addValidations();
            if (Database.DataConfiguration.validate(out error))
            {
                m_madeSelection = true;
                this.Close();
            }
            else
            {
                MessageBox.Show(error);
            }
        }
示例#4
0
 public void removeReward(Reward reward)
 {
     if (m_rewards != null)
     {
         m_rewards.Remove(reward);
     }
 }
示例#5
0
        /// <summary>
        /// Parse the XML nodes
        /// </summary>
        /// <param name="xmlNode">The <Stage></Stage> nodes</param>
        public void fromXml(XmlNode xmlNode)
        {
            String value;
            Xml.getAttribute(xmlNode, XmlAttributes.ID, true, out value);
            setId(value);

            foreach (XmlNode stageChildNode in xmlNode.ChildNodes)
            {
                if (stageChildNode.Name.Equals(XmlTag.DESCRIPTION))
                {
                    Xml.getValue(stageChildNode, !getId().Equals("0"), out value); // Optional for stage 0, required for others
                    setDescription(value);
                }
                else if (stageChildNode.Name.Equals(XmlTag.COMPLETION))
                {
                    Completion completion = new Completion();
                    completion.fromXml(stageChildNode);
                    addCompletion(completion);
                }
                else if (stageChildNode.Name.Equals(XmlTag.REWARD))
                {
                    Reward reward = new Reward();
                    reward.fromXml(stageChildNode);
                    addReward(reward);
                }
                else if (stageChildNode.Name.Equals(XmlTag.TALKTREE))
                {
                    TalkTree talkTree = new TalkTree();
                    talkTree.fromXML(stageChildNode);
                    addTalkTree(talkTree);
                }
                else
                {
                    MessageBox.Show("Unexpected node: " + stageChildNode.Name + " in the" + XmlTag.STAGE + " tag");
                }
            }

            addValidations(ValidationType.Complete);
            /*if (!valid(ValidationType.Complete, out value))
            {
                throw (new Exception(value + "\n\n" + xmlNode.InnerXml));
            }*/
        }
 public Boolean getValues(out Reward reward)
 {
     reward = m_reward;
     return m_madeSelection;
 }
 public void editReward(Reward reward)
 {
     m_reward = reward;
     // TODO: Display the Reward for edit
 }