动画事件

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

比如在攻击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解释说可以传递多个不过我没尝试成功)

事件窗口:

时间: 07-28

动画事件的相关文章

css3 animation动画事件

当使用css3时,会遇到利用@keyframes来定义动画事件,利用以下3个事件,能够捕捉当前元素的动画: AnimationEnd //动画结束时 AnimationStart  //动画開始 AnimationIteration  //动画每运行结束一次,这样的情况适用与animation-iteration-count大于1时. 对于transaction也有一个事件来捕获结束: transactionend $('.toggle-detail').on('transitionend',f

CSS3动画事件

CSS3 的动画效果强大,在移动端使用广泛,动画执行开始和结束都可以使用JS来监听其事件. animationstart animationend 以下是一个示例 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-sca

Unity 动画系统 AnimationEvent 动画事件

AnimationEvent类 添加事件的方法: 1.创建一个动画事件 AnimationEvent evt = new AnimationEvent(); evt.functionName = "PrintEvent"; evt.intParameter = 12345; evt.time = 1.3f; 2.具体的事件函数,自己写的函数 public void PrintEvent(int i) { print("PrintEvent: " + i ); //自

Unity (二) Animator:Events : 动画事件案例(呐喊出现字幕)

Events的运用案例1: 在呐喊动画中,加入字幕事件 1)在呐喊动画Shout里添加2个事件: 2)在画布里添加一个Text作为字幕 将Text设为不激活 3)给角色添加脚本: 把画布里的Text拖给脚本的text 在脚本里声明动画里的2个事件方法 注意:      * 事件必须是放置在该人物对象的脚本组件中 * 添加了帧事件,必须在代码里声明时间方法,否者报错, * 函数必须是public权限的 * 参数只能增加一个,参数类型只能是Float,Int,String.Object之一, Sho

DragonBones龙骨骨骼中的自定义事件(另有声音、动画事件)

参考: DragonBones骨骼动画事件系统详解 一.在DragonBones中添加自定义事件帧 动画制作时 时间轴拉到最下面有一个事件层,添加一个事件帧 左边属性面板定义自定义事件 二.Egret中监听事件 新建一个测试用骨骼动画test //新建测试用骨骼动画 let armatureDisplay:dragonBones.EgretArmatureDisplay; let factory = dragonBones.EgretFactory.factory; factory.parseD

chrome浏览器页面获取绑定返回顶部动画事件插件

在chrome浏览器下页面加载: var top = $("body").scrollTop()  ; console.log(top)                         // 事件监听无效 var top = $("html").scrollTop(); console.log(top)                        // 事件监听无效 var top = $(document).scrollTop(); console.log(to

关于v4包的Fragment过渡动画的事件监听无响应问题解决

项目中部分功能模块采用了单Activity+多Fragment模式,当Fragment切换时,需要在过渡动画执行完后做一些操作,通常就是在自己封装的FragmentBase中重写onCreateAnimation方法,创建一个Animation对象,并添加动画的事件监听.而最近升级了v4包后,突然发现添加的动画事件监听无响应了.通过查看源码,发现在v4包中关于Fragment管理类FragmentManagerImpl中,在获取Animation对象后,也添加了对动画的监听事件,也就覆盖了我自己

jQuery中的事件与动画 (你的明天Via Via)

众所周知,页面在加载时,会触发load事件:当用户单击某个按钮时,会触发该按钮的click事件. 这些事件就像日常生活中,人们按下开关,灯就亮了(或者灭了),往游戏机里投入游戏币就可以启动游戏一样, 通过种种事件实现各项功能或执行某项操作.事件在元素对象与功能代码中起着重要的桥梁作用. 在jQuery中,事件总体分为两大类:简单事件和复合事件. jQuery中的简单事件,与JavaScript中的事件几乎一样,都含有window事件.鼠标事件.键盘事件.表单事件等, 只是其对应的方法名称有略微不

Unity游戏开发——自动为动画剪辑添加事件 之 最后几帧的事件不能被调用的问题

最近在做一个根据配置表自动生成动画剪辑clip以及controller的功能.做法是根据配置表配置的动作以及每个动作的关键帧,自动为每个clip添加事件.这样做可以把动画的事件处理在游戏运行之前就计算好然后存到动画文件.anim中,可以提高游戏的运行效率,如果做的再细点,还可以自定义动画事件的传入的参数.比如act游戏中的多段攻击,这些数据一定是配到表中的,我们可以把表中的数据导入成Unity的ScriptableObject类型,然后打成.asset文件,在把他指定给AnimationEven