这个项目来自官方商城中的免费资源



分析:
能够连招的时间就是123这三个片段所需的时间,在到达通知时间(SaveAttack)时有两种情况
- 继续攻击 在之前三个片段(123)中玩家有按下攻击键(本案例中是鼠标左键)那么将根据当前攻击次数判断并播放蒙太奇(为什么要判断是为了下一个播放的动画开始帧与当前动画通知事件的帧(SaveAttack)完美对应上)
- 结束 在之前三个片段中玩家没有按下攻击键,那么将直接执行片段45,并通过动画通知重置攻击次数及其他数据
当然这只是一个非常简单的连招系统,其所用的判断依据只是一个bool值和一个当前播放动画的编号,如果是需要实现复杂的连招系统,那么按照我的设想应该是有一个攻击队列(数组)在特定时间内才能添加动作到队列中, 在动画通知关键帧时(SaveAttack,当然可能不止一个通知帧,可以设计多个,检查到动画则判断,检测不到则忽略)判断队列中的动作与之前完成的动作能否组成一个连招,能则判断连招动画播放动画,不能则与上面的方式一样,顺序执行结束动画(恢复至idle状态的动画)与清空数据。



网友评论