动画事件

当动画播放在某一帧,想要触发正在播放该动画物体上面的某一个方法,你就应该使用动画事件

比如在攻击1播放过程中玩家点击A键就继续发出连招,播放攻击2动画.如何实现这种效果呢?

public void NormalAttack(GameObject msg) 
    {
        if (isAttackA) 
        {
            animator.SetTrigger(Tags.PlayerAttackB);        //播放攻击2动画
            return;
        }

        animator.SetTrigger(Tags.PlayerAttackA);            //第一次点击播放攻击1动画
    }

    //当播放攻击1动画某一帧 到 某一帧之内玩家点击A健就可以播放攻击2动画了
    public void AttackAEvent1()
    {
        isAttackA = true;           //开启可以播放攻击2动画 开关
    }

    public void AttackAEvent2()
    {
        isAttackA = false;           //关闭可以播放攻击2动画 开关
    }

 

圣典解释动画事件: http://game.ceeger.com/Components/animeditor-AnimationEvents.html

在Animation窗口中添加该动画事件, 貌似事件只能传递一个参数,int float,string,object任意一个(API解释说可以传递多个不过我没尝试成功)

animeditor-AnimationEvents-0

事件窗口:

image

posted @ 2015-07-30 21:40 盘子脸 阅读(...) 评论(...) 编辑 收藏