示例#1
0
        private void lstWeaponList_SelectedIndexChange(ListBox sender)
        {
            if (sender.SelectedIndex == -1)
            {
                txtWeaponGroup.Text = string.Empty;
                return;
            }

            VariantWeaponGroupItem vwgi = sender.SelectedItem as VariantWeaponGroupItem;

            txtWeaponGroup.Text = vwgi.NewWeaponGroup.ToString();
        }
示例#2
0
        private void txtWeaponGroup_TextChange(Control sender)
        {
            if (lstWeaponList.SelectedIndex == -1)
            {
                return;
            }

            int newGroup = -1;

            if (!int.TryParse(sender.Text, out newGroup))
            {
                return;
            }

            VariantWeaponGroupItem vwgi = lstWeaponList.SelectedItem as VariantWeaponGroupItem;

            vwgi.NewWeaponGroup = newGroup;
        }
示例#3
0
        protected override void OnAttach()
        {
            if (variant == null)
            {
                return;
            }

            base.OnAttach();

            window = ControlDeclarationManager.Instance.CreateControl("Gui\\VariantSaveWindow.gui");
            Controls.Add(window);

            btnSaveVariant = (Button)window.Controls["SaveVariant"];
            btnBack        = (Button)window.Controls["Back"];
            txtVariantName = (EditBox)window.Controls["VariantName"];
            txtInfo        = (TextBox)window.Controls["Info"];

            txtInfo.Text = "Total Cost of Variant: " + cost.ToString();

            btnBack.Click += new Button.ClickDelegate(btnBack_Click);

            lstWeaponList = (ListBox)window.Controls["WeaponList"];
            lstWeaponList.SelectedIndexChange += new ListBox.SelectedIndexChangeDelegate(lstWeaponList_SelectedIndexChange);

            txtWeaponGroup             = (EditBox)window.Controls["Group"];
            txtWeaponGroup.TextChange += new DefaultEventDelegate(txtWeaponGroup_TextChange);

            btnSaveVariant.Click += new Button.ClickDelegate(btnSaveVariant_Click);

            foreach (TextBlock childBlock in variant.Children)
            {
                foreach (TextBlock grandChildBlock in childBlock.Children)
                {
                    VariantWeaponGroupItem vwgi = new VariantWeaponGroupItem();
                    vwgi.BodyPartName = childBlock.Name;
                    vwgi.WeaponName   = grandChildBlock.Name;
                    MapObjectAttachedMapObject obj = spawned.GetFirstAttachedObjectByAlias(vwgi.WeaponName) as MapObjectAttachedMapObject;
                    vwgi.AttachedMapObjectTypeName = obj.MapObject.Type.Name;
                    vwgi.OldWeaponGroup            = int.Parse(grandChildBlock.Attributes[1].Value);
                    vwgi.NewWeaponGroup            = vwgi.OldWeaponGroup;
                    lstWeaponList.Items.Add(vwgi);
                }
            }
        }
示例#4
0
        private void btnSaveVariant_Click(Button sender)
        {
            if (string.IsNullOrEmpty(txtVariantName.Text))
            {
                txtInfo.Text = "Variant name needed.";
                return;
            }

            //check if the file exists

            foreach (object item in lstWeaponList.Items)
            {
                VariantWeaponGroupItem vwgi = item as VariantWeaponGroupItem;

                TextBlock bodyPartBlock = variant.FindChild(vwgi.BodyPartName);
                TextBlock weaponBlock   = bodyPartBlock.FindChild(vwgi.WeaponName);
                weaponBlock.SetAttribute("g", vwgi.NewWeaponGroup.ToString());
            }

            if (SaveVariant != null)
            {
                SaveVariant(this, txtVariantName.Text.Trim(), variant);
            }
        }
        protected override void OnAttach()
        {
            if (variant == null)
                return;

            base.OnAttach();

            window = ControlDeclarationManager.Instance.CreateControl("Gui\\VariantSaveWindow.gui");
            Controls.Add(window);

            btnSaveVariant = (Button)window.Controls["SaveVariant"];
            btnBack = (Button)window.Controls["Back"];
            txtVariantName = (EditBox)window.Controls["VariantName"];
            txtInfo = (TextBox)window.Controls["Info"];

            txtInfo.Text = "Total Cost of Variant: " + cost.ToString();

            btnBack.Click += new Button.ClickDelegate(btnBack_Click);

            lstWeaponList = (ListBox)window.Controls["WeaponList"];
            lstWeaponList.SelectedIndexChange += new ListBox.SelectedIndexChangeDelegate(lstWeaponList_SelectedIndexChange);

            txtWeaponGroup = (EditBox)window.Controls["Group"];
            txtWeaponGroup.TextChange += new DefaultEventDelegate(txtWeaponGroup_TextChange);

            btnSaveVariant.Click += new Button.ClickDelegate(btnSaveVariant_Click);

            foreach (TextBlock childBlock in variant.Children)
            {
                foreach (TextBlock grandChildBlock in childBlock.Children)
                {
                    VariantWeaponGroupItem vwgi = new VariantWeaponGroupItem();
                    vwgi.BodyPartName = childBlock.Name;
                    vwgi.WeaponName = grandChildBlock.Name;
                    MapObjectAttachedMapObject obj = spawned.GetFirstAttachedObjectByAlias(vwgi.WeaponName) as MapObjectAttachedMapObject;
                    vwgi.AttachedMapObjectTypeName = obj.MapObject.Type.Name;
                    vwgi.OldWeaponGroup = int.Parse(grandChildBlock.Attributes[1].Value);
                    vwgi.NewWeaponGroup = vwgi.OldWeaponGroup;
                    lstWeaponList.Items.Add(vwgi);
                }
            }
        }