コード例 #1
0
ファイル: TagController.cs プロジェクト: nasa03/GwentCard
        public void OnClick(GameObject tagButton)
        {
            for (int i = 0; i < tagButtons.Length; i++)
            {
                if (tagButton == tagButtons[i])
                {
                    groups[i].SetActive(true);
                    GetGrids(i);
                    OnValueChange();
                    tagButtons[i].GetComponent <UIButton>().isEnabled = false;
                    group           = (Global.Group)System.Enum.Parse(typeof(Global.Group), tagButtons[i].transform.name);
                    groupLabel.text = groupLabelText[i];
                }
                else
                {
                    groups[i].SetActive(false);
                    tagButtons[i].GetComponent <UIButton>().isEnabled = true;
                }
            }

            if (File.Exists(Global.path))
            {
                SaveController.GetInstance().LoadXML();
                NumberController.GetInstance().Number();
            }
        }
コード例 #2
0
ファイル: SaveController.cs プロジェクト: nasa03/GwentCard
        public void OnClick()
        {
            try
            {
                if (NumberController.GetInstance().leaderCount != 1)
                {
                    throw new SaveException();
                }
                if (NumberController.GetInstance().specialCount > 10)
                {
                    throw new SaveException();
                }
                if (NumberController.GetInstance().monsterCount < 25 || NumberController.GetInstance().monsterCount > 40)
                {
                    throw new SaveException();
                }

                XmlElement root      = xml.DocumentElement;
                XmlNode    groupNode = root.SelectSingleNode(string.Format("/root/{0}", TagController.GetInstance().group.ToString()));
                groupNode.Attributes["save"].Value = true.ToString();
                xml.Save(Global.path);
                StartCoroutine(ShowLabel("保存成功"));
            }
            catch (SaveException)
            {
                StartCoroutine(ShowLabel("卡牌数量不满足条件,保存失败"));
            }
        }
コード例 #3
0
ファイル: CardPlus.cs プロジェクト: nasa03/GwentCard
        public void Check()
        {
            if (toggle.value == true && total == 0)
            {
                total++;
                label.text = string.Format("{0}/{1}", total, max);
            }

            NumberController.GetInstance().Number();
            SaveController.GetInstance().UpdateXML(transform);
        }
コード例 #4
0
ファイル: CardPlus.cs プロジェクト: nasa03/GwentCard
        public void Plus()
        {
            if (total == max)
            {
                return;
            }

            total++;
            label.text = string.Format("{0}/{1}", total, max);
            NumberController.GetInstance().Number();
            SaveController.GetInstance().UpdateXML(transform);
        }
コード例 #5
0
ファイル: SaveController.cs プロジェクト: nasa03/GwentCard
        public void UpdateXML(Transform card)
        {
            string     group = TagController.GetInstance().group.ToString();
            string     list  = TagController.GetInstance().list.ToString();
            XmlElement root  = xml.DocumentElement;
            XmlNode    node  = root.SelectSingleNode(string.Format("/root/{0}/{1}", group, list));

            if (node.SelectSingleNode(card.name) == null)
            {
                if (card.Find("Control - Simple Checkbox").GetComponent <UIToggle>().value)
                {
                    XmlElement cardElement = xml.CreateElement(card.name);
                    if (list == "leader")
                    {
                        cardElement.SetAttribute("sprite", card.GetComponent <UISprite>().spriteName);
                        cardElement.SetAttribute("behavior", card.GetComponent <PlayerLeaderBehavior>().GetType().ToString());
                        cardElement.SetAttribute("message", card.GetComponent <PlayerLeaderBehavior>().message);
                    }
                    else
                    {
                        cardElement.SetAttribute("total", card.GetComponent <CardPlus>().total.ToString());
                        cardElement.SetAttribute("sprite", card.GetComponent <UISprite>().spriteName);
                        CardProperty cardProperty = card.GetComponent <CardProperty>();
                        cardElement.SetAttribute("line", cardProperty.line.ToString());
                        cardElement.SetAttribute("effect", cardProperty.effect.ToString());
                        cardElement.SetAttribute("gold", cardProperty.gold.ToString());
                        cardElement.SetAttribute("power", cardProperty.power.ToString());
                    }
                    node.AppendChild(cardElement);
                }
            }
            else
            {
                XmlNode cardNode = node.SelectSingleNode(card.name);
                if (card.Find("Control - Simple Checkbox").GetComponent <UIToggle>().value)
                {
                    if (list != "leader")
                    {
                        cardNode.Attributes["total"].Value = card.GetComponent <CardPlus>().total.ToString();
                    }
                }
                else
                {
                    node.RemoveChild(cardNode);
                }
            }

            NumberController.GetInstance().Number();
        }
コード例 #6
0
ファイル: CardPlus.cs プロジェクト: nasa03/GwentCard
        public void Minus()
        {
            if (total == 0)
            {
                return;
            }

            total--;
            if (total == 0)
            {
                toggle.value = false;
            }

            label.text = string.Format("{0}/{1}", total, max);
            NumberController.GetInstance().Number();
            SaveController.GetInstance().UpdateXML(transform);
        }
コード例 #7
0
 public void Check()
 {
     SaveController.GetInstance().UpdateXML(transform.parent);
     NumberController.GetInstance().Number();
 }