Project1

标题: 如何创造一种状态,使角色的技能附带某种属性? [打印本页]

作者: 脚本盲    时间: 2019-8-9 12:15
标题: 如何创造一种状态,使角色的技能附带某种属性?
本帖最后由 脚本盲 于 2019-8-9 20:03 编辑

如题所示,
Mv自带可以实现,在某种状态下,使角色的普通攻击附带某种属性。
但是无法实现技能附带某种属性。
求问如何实现以下效果:
角色在【火攻】状态下,造成的伤害(普通攻击和技能)变为火属性。
作者: 多卡多卡    时间: 2019-8-9 16:26
本帖最后由 多卡多卡 于 2019-8-9 16:29 编辑

用YEP_BuffsStatesCore
在状态的注释栏添加以下内容:
  1. <Custom Initiate Effect>
  2. this._ElementId = this.item().damage.elementId;
  3. this.isSkill() ? this.item().damage.elementId = 2 : 0;
  4. </Custom Initiate Effect>
  5. <Custom Conclude Effect>
  6. this.item().damage.elementId = this._ElementId;
  7. </Custom Conclude Effect>
复制代码

如果去掉第二部分会导致技能的属性在状态消失后无法还原,这是插件设计的原因。

普通攻击为-1,无属性为0,物理属性为1,自定义的第一个属性为2,以此类推。
效果如图,雷电的伤害变成了火属性。

作者: eterry11211    时间: 2019-8-11 16:25
多卡多卡 发表于 2019-8-9 16:26
用YEP_BuffsStatesCore
在状态的注释栏添加以下内容:

借着帖子顺路问一下,也是用这个YEP插件,要让具有某个状态后,指定技能最终伤增加,要怎么写呢
作者: 多卡多卡    时间: 2019-8-11 17:07
eterry11211 发表于 2019-8-11 16:25
借着帖子顺路问一下,也是用这个YEP插件,要让具有某个状态后,指定技能最终伤增加,要怎么写呢 ...

直接改伤害公式就行了
(伤害公式)*(a.isStateAffected(/*状态Id*/) ? /*倍率*/ : 1)
作者: eterry11211    时间: 2019-8-13 10:28
多卡多卡 发表于 2019-8-11 17:07
直接改伤害公式就行了
(伤害公式)*(a.isStateAffected(/*状态Id*/) ? /*倍率*/ : 1)

我果然是脑抽了才想在状态里面写,谢谢点醒。我接触这工具时间还不多。

我还有一个问题想请教下,我现在看了整个游戏,没有一个地方会显示状态的描述。大佬是否知道怎么用插件在战斗过程中,查看敌我双方已具有的状态的详细说明,比如 怪物中毒了,鼠标放在怪物头上可以查看到,中毒:每回合5%生命值扣除,还剩2回合。类似这样的描述呢。
作者: 多卡多卡    时间: 2019-8-13 10:48
eterry11211 发表于 2019-8-13 10:28
我果然是脑抽了才想在状态里面写,谢谢点醒。我接触这工具时间还不多。

我还有一个问题想请教下 ...

这种插件我还没见过。目前能找到的插件都是点击触发而没有对指针位置的实时判断,也许需要一些外部的库才能实现这种功能




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