今天为了给一个怪物添加用触发打击掉血的方法,但是怪物的打击是左右摇晃武器,这样一次攻击会造成两次,所以,有一个解决办法就是,在动画某一帧添加个时间,使触发开启,再在后一帧,使触发失效!这样可以完美解决问题了!
所以我今天,介绍如何在新动画里某一帧添加事件!
(1)执行方法Test脚本挂在有动画Animator的游戏对象上
using UnityEngine;
using System.Collections;
/// <summary>
/// 功能:新动画的测试脚本
/// 创建者: VioletTD
/// 修改时间: 2013年11月8日 20:46
/// 感谢:friend的HELP!!! Me 加油!
/// </summary>
public class Test : MonoBehaviour {
void TestMethod(string myName)//*************************** 测试方法 ***************************
{
Debug.Log(myName);//*************************** 输出参数 ***************************
}
}
注意该方法之允许有一个参数,下面会看到,可以传递的参数类型!
(2)找到动画点击Edit
(3)找到Event点击加号,后看到Edit Animation Event,注意方法的书写(只写入名字就可以,当然你上面的方法中一定要有该方法),该方法为私有时也可以调用,非常方便!! 底下的float,int,string,object,就是你要穿的参数,但最多其中传递一个参数!, 上面是我的怪物,在攻击动画播放到0:03时候输出的结果,证明可以使用!
本文介绍了如何在Unity3D的 Animator 动画中添加事件,以解决因怪物左右摇晃武器导致的攻击触发两次的问题。通过在特定帧设置事件,实现触发开启和关闭,确保正确执行打击掉血的逻辑。文中详细阐述了添加事件的步骤,并展示了如何传递参数。这是一个抛砖引玉的分享,鼓励大家探讨更多创新应用。

2万+

被折叠的 条评论
为什么被折叠?



