伤害生效由谁来决定?
普通攻击
使用动画事件
用动画事件是最普遍的一种方式
![在这里插入图片描述](https://img-blog.csdnimg.cn/61f8f80a70044d228e01dc4e9794170a.png#pic_center)
假如我的伤害生效是在动画结束之后呢?
攻击动画片段只有2秒时长,要在3秒才对敌方造成伤害,那么动画事件就做不到了。
计时器
把伤害生效是点交给计时器去操作,攻击的时候开始计时,计时完成伤害生效。
![在这里插入图片描述](https://img-blog.csdnimg.cn/83adffc234a046789af08364878706ca.png#pic_center)
伤害对象
把伤害封装成对象,延时也是用的计时器
![在这里插入图片描述](https://img-blog.csdnimg.cn/16a29024d1044a0db2d45d11af872e9d.png#pic_center)
技能
![在这里插入图片描述](https://img-blog.csdnimg.cn/1fc79c1ecd00415c89ec99c2751fae5e.gif#pic_center)
技能的流程
![在这里插入图片描述](https://img-blog.csdnimg.cn/6c20fec075194b258ec991ce3c18ea1c.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA572q44Gu5LiA5Y2B5LiA,size_16,color_FFFFFF,t_70,g_se,x_16#pic_center)
需要多少个计时器?
每个特效需要计时器
每次震动需要计时器
每个事件需要计时器
…
那么能不能做统一编辑呢?
试试Timeline
![在这里插入图片描述](https://img-blog.csdnimg.cn/a5ee136fba8e49508b90a3153427c735.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA572q44Gu5LiA5Y2B5LiA,size_15,color_FFFFFF,t_70,g_se,x_16#pic_center)
优点
缺点
不用Timeline呢?
把时间与动作放在配置文件中,如JSON、SO等
写一个管理器,到达指定时间时触发动作
![在这里插入图片描述](https://img-blog.csdnimg.cn/1098836883a44085be2e728a98096d59.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA572q44Gu5LiA5Y2B5LiA,size_12,color_FFFFFF,t_70,g_se,x_16#pic_center)
优点
缺点
技能动作的数值在哪配?
特效、震动等都是客户端显示效果,在Timeline中编辑即可,技能伤害等数值也需要在Timeline中编辑吗?
比如,最开始技能是造成500%伤害,现在要把技能调整到800%伤害
如果Timeline中编辑,就需要打开对应的Timeline文件……似乎有点麻烦
我希望怎么配?
我想的几种方式