Project1
标题:
关于战斗中技能的chain
[打印本页]
作者:
uyt6u7r
时间:
2018-12-25 01:10
标题:
关于战斗中技能的chain
rt
如果想要实现这样的效果:
为每个技能添加属性,在发动技能的时候记录属性的chain数,通过特定的chain数改变技能效果
例如:
技能a:火属性,对单个敌人造成攻击力100%的伤害;当当回合火属性chain数大于3时,技能效果改变为对全体敌人造成攻击力88%的伤害
目前思路是通过yep的action sequence添加变量设置,但是没有摸索出合适的方法
特此请教
作者:
ekmomo
时间:
2018-12-25 10:45
本帖最后由 ekmomo 于 2018-12-25 13:15 编辑
本楼理解错误,直接看三楼即可。
某角色多次使用某类技能时触发
作者:
ekmomo
时间:
2018-12-25 11:03
本帖最后由 ekmomo 于 2018-12-25 13:10 编辑
eleEffect.zip
(669 Bytes, 下载次数: 66)
2018-12-25 12:51 上传
点击文件名下载附件
除了YEP
战斗核心以及目标核心
以外,你还需要这个插件。当你加载这个插件时,属性攻击是被自动计算的。
你可以在需要应用额外效果的技能里填写如下备注
<Custom Target Eval>
if (BattleManager._eleCount[1] > 3 && user.isActor()) targets = this.opponentsUnit().aliveMembers();
else targets = Yanfly.Target.Game_Action_makeTargets.call(this);
</Custom Target Eval>
复制代码
以上代码中_eleCount[1]代表1号属性,在默认工程中是物理。你可以自定义多种属性,如_eleCount[2]在默认工程中代表 炎 属性。
如果你希望敌方角色也应用额外效果,你可以删除判断中的 && user.isActor()。
伤害 依然在 伤害公式中 设置
BattleManager._eleCount[1] > 3 ? user.atk * 0.88 : user.atk
复制代码
你也可以
配合YEP的技能核心
(SKILLCORE)创造一些更有意思的连锁效果,如:
<AFTER EVAL>
if (BattleManager._eleCount[3] > 5) user.addState(2);
//当3号属性回合内累计被使用5次时,角色获得2号状态。
</AFTER EVAL>
复制代码
再比如,你可以在一个火属性技能中加入:
<AFTER EVAL>
if (BattleManager._eleCount[5] > 1) target.addState(17);
//如果回合内有人使用过水属性攻击,目标获得17号状态(比如叫雾气?)。
</AFTER EVAL>
复制代码
另外,因为在需要在每个回合开始时清零计数器,所以这个插件仅适用于 标准回合战斗(DTB或STB),不适用于 ATB 及 CTB。
作者:
uyt6u7r
时间:
2018-12-26 23:46
ekmomo 发表于 2018-12-25 11:03
除了YEP战斗核心以及目标核心以外,你还需要这个插件。当你加载这个插件时,属性攻击是被自动计算的。
你可 ...
dtb模式下测试效果完美、
谢谢大佬(拜倒
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1