查看: 3387|回复: 9

[有事请教] 如何实现“状态改变攻击动画”的效果

[复制链接]
梦石
0
星屑
168
在线时间
45 小时
注册时间
2012-9-4
回帖
14
发表于 2019-10-4 20:32:31 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
如:火属性附魔属性使得普通攻击动画“斩击”变成 “斩击(火)”

或者状态能否改变一个技能的动画,如:火属性附魔改变技能“二连斩”的动画为“二连斩(火)”?
梦石
0
星屑
1046
在线时间
56 小时
注册时间
2016-8-11
回帖
21
发表于 2019-10-4 20:36:23 | 显示全部楼层
感觉好复杂,我备份下工程试试看能不能行
回复

使用道具 举报

梦石
0
星屑
1046
在线时间
56 小时
注册时间
2016-8-11
回帖
21
发表于 2019-10-4 21:37:38 | 显示全部楼层
本帖最后由 qq57271884 于 2019-10-4 21:39 编辑

使用插件:YEP插件 Buffs & States Core
至于前置插件神马的请自行查阅相关教程

需求效果图:
2019.10.04.21.30.12.gif

需求达成方法:

在相关状态下添加备注:
下列代码中的67请自行更换为想要设置的动画ID

[pre lang="javascript"]
<Custom Conclude Effect>
if(this.item().id === 1){    //判断是否为普攻
  if (target.result().hpDamage > 0) {    //判断是否造成了伤害
target.startAnimation(67);       //对目标播放动画67
  }
}
</Custom Conclude Effect>
[/pre]

如果不需要判断是否造成了伤害,就是不管是否MISS都播放动画请使用下面的代码
[pre lang="javascript"]
<Custom Conclude Effect>
if(this.item().id === 1){    //判断是否为普攻
target.startAnimation(67);       //对目标播放动画67
}
</Custom Conclude Effect>
[/pre]

评分

参与人数 1赞 +1 收起 理由
wtz990303 + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
168
在线时间
45 小时
注册时间
2012-9-4
回帖
14
 楼主| 发表于 2019-10-4 22:39:45 | 显示全部楼层
qq57271884 发表于 2019-10-4 21:37
使用插件:YEP插件 Buffs & States Core
至于前置插件神马的请自行查阅相关教程

感谢大佬!!
另外问一个扩充问题:
可不可以修改this.item().id这个式子,使得“命中类型为物理攻击的技能都添加这个动画”
虽然也可以||id||id……但比较麻烦。

点评

重写代码中,已有思路,稍等。建议加论坛交流群 663889472  发表于 2019-10-4 22:54
回复

使用道具 举报

梦石
0
星屑
1046
在线时间
56 小时
注册时间
2016-8-11
回帖
21
发表于 2019-10-4 23:11:10 | 显示全部楼层
2019.10.04.23.04.16.gif


根据你刚刚说的。修改了一下代码。
当技能属性为物理属性的时候(参照【类型】中的【属性】)或者 为普通攻击的时候(考虑到有时候武器会自带属性,没有测试这个代码多种属性同时生效的效果,没准会BUG)
[pre lang="javascript"]
<Custom Conclude Effect>
var elements = this.getItemElements();
while (elements.length > 0) {
        if(elements.shift() === 1 || this.item().id === 1){
                target.startAnimation(67);
        }
}
</Custom Conclude Effect>
[/pre]

如果只想要物理属性生效,

[pre lang="javascript"]
<Custom Conclude Effect>
var elements = this.getItemElements();
while (elements.length > 0) {
        if(elements.shift() === 1 ){
                target.startAnimation(67);
        }
}
</Custom Conclude Effect>
[/pre]
回复 1 0

使用道具 举报

梦石
0
星屑
168
在线时间
45 小时
注册时间
2012-9-4
回帖
14
 楼主| 发表于 2019-10-5 10:46:41 | 显示全部楼层
qq57271884 发表于 2019-10-4 23:11
根据你刚刚说的。修改了一下代码。
当技能属性为物理属性的时候(参照【类型】中的【属性】)或者 为普 ...

感谢回答,但其实我指的是这个……
C:\Users\Administrator\Desktop
回复

使用道具 举报

梦石
0
星屑
168
在线时间
45 小时
注册时间
2012-9-4
回帖
14
 楼主| 发表于 2019-10-5 10:47:27 | 显示全部楼层
不好意思,图片搞错了
捕获.PNG
回复

使用道具 举报

梦石
0
星屑
1046
在线时间
56 小时
注册时间
2016-8-11
回帖
21
发表于 2019-10-5 10:56:19 | 显示全部楼层
wtz990303 发表于 2019-10-5 10:47
不好意思,图片搞错了

这个啊。。这个暂时我也不知道。。
回复

使用道具 举报

梦石
0
星屑
168
在线时间
45 小时
注册时间
2012-9-4
回帖
14
 楼主| 发表于 2019-10-5 11:35:27 | 显示全部楼层
qq57271884 发表于 2019-10-5 10:56
这个啊。。这个暂时我也不知道。。

好的额!谢谢大佬!
这里提出一个很蠢的解决办法:把所有物理攻击放在id>100&&id<200的地方...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部