unity3d-学习笔记6-卡牌游戏制作(动画切换)

unity3d-学习笔记6-卡牌游戏制作

动画切换

实现在点击button之后弹出特效以及boss反应切换动画的效果

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Boss : MonoBehaviour
{
    public int id;
    public string name;
    public int life;
    public int energy;
    public int cardNumber;
    public string attribution;
    Image img;
    int filledAmount;
    Animator skillEffect;
    Animator bossAnimator;
    public Boss()
    {

    }
    public Boss(int Id,string Name,int Life,int Energy,int CardNmuber,string Attribution)
    {
        id = Id;
        name = Name;
        life = Life;
        energy = Energy;
        cardNumber = CardNmuber;
        attribution = Attribution;
    }
    public void cutLife()
    {
            // int timeCount = 0;
            filledAmount = filledAmount + 1;
            img.fillAmount -= filledAmount * 0.1f * Time.deltaTime;
            skillEffect.SetInteger("isHit", 1);
        StartCoroutine(WaitAndPrint(0.5f));
            
    }
    public void attack()
    {
        bossAnimator.SetInteger("bossState", 1);
        StartCoroutine(bossAttack(1f));

    }

    IEnumerator WaitAndPrint(float waitTime)
    {
        yield return new WaitForSeconds(waitTime);
        //等待之后执行的动作  
        skillEffect.SetInteger("isHit", 0);
        attack();
    }
    IEnumerator bossAttack(float waitTime)
    {
        yield return new WaitForSeconds(waitTime);
        bossAnimator.SetInteger("bossState", 0);
    }
    void Start()
    {

        filledAmount = 0;
        img = GameObject.Find("lifeBar").GetComponent<Image>();
        skillEffect = GameObject.Find("skillEffect").GetComponent<Animator>();
        bossAnimator = GameObject.Find("Boss").GetComponent<Animator>();
    }
}

其实就是运用了前一篇里的延迟进行和获得动画组件对象,替换动作的逻辑,没什么好说的
然后就是优化了一些逻辑,比如原先是在button组件里判定boss血量以及特效的,但是这个逻辑不太合理,应该是触发了这个事件后,通过调用boss的脚步方法来控制boss这个人物比较符合逻辑
今天本来想实现回合制的,但看到一篇大佬的文章里实现这个首先需要把人物和boss类都创建好才行,所以今天就先完成人物和boss 的类,下次再实现回合制,看了大佬的代码,整体来说不难,也是应用了延迟,然后多加了一些判定而已,逻辑会比较复杂,不过慢慢捋就好了
今天的一大突破就是基本没有怎么看大佬们的代码来当“搬运工”了,自己在脑里过了一遍代码之后就直接上来敲了,然后有bug就看问题在哪,一个一个的解决,发现很顺畅,难道我也开始变强了吗hhhhh

https://blog.csdn.net/qinyuanpei/article/details/28125171
这篇是我看的实现回合制的大佬的帖子,有兴趣的可以看看<

临近过年,心思有点放松,希望能在放假的时候把一个极简版的游戏先发布出来,建立一波信心,才能有动力往后研究,加油!


版权声明:本文为pure81原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。