Project1

标题: 如何实现“根据装备的武器决定技能动画”的功能 [打印本页]

作者: wtz990303    时间: 2019-10-3 23:00
标题: 如何实现“根据装备的武器决定技能动画”的功能
技能:对一个敌人进行二连击
怎么让装备 弓箭 和 枪 的时候分别打出各自武器类型的“二连击”动画效果呢?

如果选择“普通攻击”动画的话,虽然动画体现了不同的武器类型,但是最后动画只会打1下。
作者: qq57271884    时间: 2019-10-3 23:35
本帖最后由 qq57271884 于 2019-10-3 23:39 编辑

YEP动作序列插件应该可以满足你吧。。



作者: wtz990303    时间: 2019-10-4 19:32
qq57271884 发表于 2019-10-3 23:35
YEP动作序列插件应该可以满足你吧。。

请问下怎样获取使用者武器的ID呢
作者: qq57271884    时间: 2019-10-4 20:11
本帖最后由 qq57271884 于 2019-10-4 21:56 编辑
wtz990303 发表于 2019-10-4 19:32
请问下怎样获取使用者武器的ID呢



可能讲起来比较复杂,你可能要理解久一点。
首先 类型>>武器类型 中可以定义一些武器类型
然后 你可以在 系统>>[SV]攻击动作 中设置基本攻击动作
这些基本攻击动作动画为3帧动画,在img/system下,WeaponsX.png (X分别为1/2/3)
==========以上为基本攻击动作武器动画。

然后是YEP的动作序列插件,可以在B站找到视频,下载地址:
http://www.yanfly.moe/wiki/Action_Sequence_Pack_2_(YEP)
并不推荐把普通攻击设置为多段攻击,目前我只知道YEP动作序列插件设置普通攻击是可以通过的是SV动作来判断的,而是否能通过武器ID进行判断我就无法解答了,希望有大佬可以继续解答。

=========================

PS:        当然,如果你确定把远程动作全都分配给【弓箭】【枪械】并且所有弓箭普通攻击都为2连击的情况下,可以通过yep动作序列插件来判断SV动作是否为missile,然后设置2连击动画
       
准备上一下效果图,稍后补充


这将影响所有SV 普通攻击 的 攻击动作为missile的动作都为攻击两次,因为是修改了普通攻击的动画效果

远程攻击动作全改为2连击

JAVASCRIPT 代码复制
  1. <target action>
  2. if user.attackMotion() !== 'missile'  //->>>判断是否不为远程攻击
  3. move user: target, FRONT BASE, 20 //移动角色到目标前
  4. face user: target                //面向目标
  5. wait for movement           //等待移动结束
  6. motion attack: user         //播放攻击动作动画
  7. action animation          //播放目标动画
  8. wait for animation      //等待动画结束
  9. action effect                  //显示伤害
  10. else            //->>>否则
  11. perform start        //默认开场移动
  12. wait for movement       //等待移动结束
  13. motion attack: user      //播放攻击动画
  14. attack animation: target      //播放目标动画
  15. wait for animation        //等待动画结束
  16. action effect            //显示伤害
  17. motion attack: user            //同上重复一次
  18. attack animation: target
  19. wait for animation
  20. action effect
  21. end                      //->>>判断结束
  22. </target action>


正常单次攻击

JAVASCRIPT 代码复制
  1. <target action>
  2. if user.attackMotion() !== 'missile'
  3. move user: target, FRONT BASE, 20
  4. face user: target
  5. wait for movement
  6. motion attack: user
  7. action animation
  8. wait for animation
  9. action effect
  10. else
  11. perform start
  12. wait for movement
  13. motion attack: user
  14. attack animation: target
  15. wait for animation
  16. action effect
  17. end
  18. </target action>





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1