Exemple #1
0
    public void Init(CardSet.Group group, bool isSelf)
    {
        this.group  = group;
        this.isSelf = isSelf;

        for (int i = 0; i < 6; i++)
        {
            deck.Add(CardSet.GetCard(group, CardSet.Level.Normal));

            Debug.Log(group + " " + "Normal " + deck[i].GetName());
        }

        for (int i = 0; i < 4; i++)
        {
            deck.Add(CardSet.GetCard(group, CardSet.Level.Rare));

            Debug.Log(group + " " + "Rare " + deck[6 + i].GetName());
        }

        for (int i = 0; i < 2; i++)
        {
            deck.Add(CardSet.GetCard(group, CardSet.Level.Elite));

            Debug.Log(group + " " + "Elite " + deck[10 + i].GetName());
        }

        // 抽取4张陷阱卡

        /*for (int i = 0; i < 4; i++)
         * {
         *  int index = Random.Range(0, deck.Count);
         *  deck.Insert(index, CardSet.GetTrapCard(group));
         * }*/

        // 抽取4张装备卡
        for (int i = 0; i < 4; i++)
        {
            int index = Random.Range(0, deck.Count);
            deck.Insert(index, CardSet.GetEquipCard(group));
        }
    }
Exemple #2
0
    public CardView Create(CardSet.Group group)
    {
        Object     origin     = Resources.Load("Prefab/Card");
        GameObject gameObject = GameObject.Instantiate(origin) as GameObject;

        this.view = gameObject.AddComponent <CardView>();

        this.view.Name.text     = this.model.name;
        this.view.Describe.text = this.model.describe;

        string id = (this.model.id / 10 == 0 ? "0" : "") + this.model.id;

        if (this.model.type == CardModel.Type.Monster)
        {
            this.view.type        = CardModel.Type.Monster;
            this.view.Health.text = this.model.health.ToString();
            this.view.Attack.text = this.model.attack.ToString();
            this.view.Defend.text = this.model.defend.ToString();

            switch (group)
            {
            case CardSet.Group.Benefit:
                this.view.Group.text    = "益";
                this.view.Avatar.sprite = Resources.Load <Sprite>("Sprites/Role/Benefit/" + id);
                break;

            case CardSet.Group.Harm:
                this.view.Group.text    = "害";
                this.view.Avatar.sprite = Resources.Load <Sprite>("Sprites/Role/Harm/" + id);
                break;
            }

            switch (this.model.skill)
            {
            case 1:
                this.view.Skill.text = "技能 / 入侵";
                break;

            case 2:
                this.view.Skill.text = "技能 / 拦截";
                break;

            case 3:
                this.view.Skill.text = "技能 / 反击";
                break;

            case 4:
                this.view.Skill.text = "技能 / 召唤";
                break;

            case 5:
                this.view.Skill.text = "技能 / 刺杀";
                break;

            case 6:
                this.view.Skill.text = "技能 / 守护";
                break;

            case 7:
                this.view.Skill.text = "技能 / 诈尸";
                break;

            case 8:
                this.view.Skill.text = "技能 / 增强";
                break;

            default:
                this.view.Skill.text = "技能 / 无";
                break;
            }
        }
        else if (this.model.type == CardModel.Type.Trap)
        {
            this.view.type        = CardModel.Type.Trap;
            this.view.Health.text = "";
            this.view.Attack.text = "";
            this.view.Defend.text = "";
            this.view.Skill.text  = "陷阱卡";

            this.view.transform.FindChild("Front/TextHealth").GetComponent <Text>().text = "";
            this.view.transform.FindChild("Front/TextAttack").GetComponent <Text>().text = "";
            this.view.transform.FindChild("Front/TextDefend").GetComponent <Text>().text = "";

            switch (group)
            {
            case CardSet.Group.Benefit:
                this.view.Group.text = "益";
                //this.view.Avatar.sprite = Resources.Load<Sprite>("Sprites/Role/Benefit/" + id);
                break;

            case CardSet.Group.Harm:
                this.view.Group.text = "害";
                //this.view.Avatar.sprite = Resources.Load<Sprite>("Sprites/Role/Harm/" + id);
                break;
            }
        }
        else if (this.model.type == CardModel.Type.Equip)
        {
            this.view.type        = CardModel.Type.Equip;
            this.view.Health.text = this.model.health.ToString();
            this.view.Attack.text = this.model.attack.ToString();
            this.view.Defend.text = this.model.defend.ToString();
            this.view.Skill.text  = "装备卡";

            switch (group)
            {
            case CardSet.Group.Benefit:
                this.view.Group.text    = "益";
                this.view.Avatar.sprite = Resources.Load <Sprite>("Sprites/Equip/Benefit/" + id);
                break;

            case CardSet.Group.Harm:
                this.view.Group.text    = "害";
                this.view.Avatar.sprite = Resources.Load <Sprite>("Sprites/Equip/Harm/" + id);
                break;
            }
        }


        this.view.gameObject.GetComponent <Button>().onClick.AddListener(OnClick);

        return(this.view);
    }