Esempio n. 1
0
 private void ChangeDirSign(CardSign up, CardSign down)
 {
     ChangeDirSignColor(up, dirSign_up);
     ChangeDirSignText(up, dirSign_up_text);
     ChangeDirSignColor(down, dirSign_down);
     ChangeDirSignText(down, dirSign_down_text);
 }
Esempio n. 2
0
    private string GetDescriptionOfSign(CardSign sign)
    {
        string description = "";

        if (sign.type == CardSign.Type.atk)
        {
            description += "造成" + card.damage_multiply * (holder.atk + holder.atk_addValue) + "点伤害;" + " ";
        }
        if (sign.type == CardSign.Type.dfd)
        {
            if (sign.type == CardSign.Type.dfd)
            {
                if (sign.subType == CardSign.SubType.dfd_block)
                {
                    description += "格挡" + holder.dfd + "点伤害;" + " ";
                }
                if (sign.subType == CardSign.SubType.dfd_dodge)
                {
                    description += "闪避;" + " ";
                }
                if (sign.subType == CardSign.SubType.dfd_parry)
                {
                    description += "招架;" + " ";
                }
            }
        }
        return(description);
    }
Esempio n. 3
0
 private void ChangeDirSignText(CardSign sign, Text text)
 {
     if (sign.intensity <= 0)
     {
         text.text = "";
     }
     else
     {
         text.text = CardSign.SignTypeName(sign.subType) + sign.intensity;
     }
 }
Esempio n. 4
0
 private void ChangeDirSignColor(CardSign sign, GameObject signUI)
 {
     if (sign.type == CardSign.Type.atk)
     {
         signUI.GetComponent <Image>().color = Color.red;
     }
     else if (sign.type == CardSign.Type.dfd)
     {
         signUI.GetComponent <Image>().color = Color.green;
     }
     else if (sign.type == CardSign.Type.none)
     {
         signUI.GetComponent <Image>().color = Color.white;
     }
 }
Esempio n. 5
0
    private CardSign GetCardSignByText(Card card, string txt, bool isAtUp)
    {
        char[] words = txt.ToCharArray();

        // 名称
        List <char> name = new List <char>();
        // 强度
        List <char> value = new List <char>();

        for (int i = 0; i < words.Length; i++)
        {
            if (words[i] > 47 && words[i] < 58)
            {
                value.Add(words[i]);
            }
            else
            {
                name.Add(words[i]);
            }
        }

        char[] _name = name.ToArray();
        string mname = new string(_name);

        char[] _value = value.ToArray();

        CardSign sign = new CardSign();

        switch (mname)
        {
        case ("劈砍"):
            sign.subType = CardSign.SubType.atk_chop;
            sign.type    = CardSign.Type.atk;
            break;

        case ("突刺"):
            sign.subType = CardSign.SubType.atk_stab;
            sign.type    = CardSign.Type.atk;
            break;

        case ("钝击"):
            sign.subType = CardSign.SubType.atk_blunt;
            sign.type    = CardSign.Type.atk;
            break;

        case ("格挡"):
            sign.subType = CardSign.SubType.dfd_block;
            sign.type    = CardSign.Type.dfd;
            break;

        case ("招架"):
            sign.subType = CardSign.SubType.dfd_parry;
            sign.type    = CardSign.Type.dfd;
            break;

        case ("闪避"):
            sign.subType = CardSign.SubType.dfd_dodge;
            sign.type    = CardSign.Type.dfd;
            break;

        case ("空白"):
            sign.subType = CardSign.SubType.none;
            sign.type    = CardSign.Type.none;
            break;
        }

        if (_value.Length > 0)
        {
            int inten = 0;

            for (int i = 0; i < _value.Length; i++)
            {
                int pow = (int)Mathf.Pow(10, _value.Length - i - 1);
                inten += (_value[i] - 48) * pow;
            }

            sign.intensity = inten;
        }
        else
        {
            sign.intensity = 0;
        }

        sign.pos = isAtUp ? CardSign.Pos.up : CardSign.Pos.down;

        // 添加标记效果
        sign.effect      = GetSignEffect(sign.subType);
        sign.effect.card = card;


        return(sign);
    }