Project1

标题: 请问一下如果设计一个技能消耗“当前TP” [打印本页]

作者: wxx45600    时间: 2020-6-27 01:10
标题: 请问一下如果设计一个技能消耗“当前TP”
今天在研究技能的时候想到消耗当前所有TP然后释放一个技能的想法。

灵感来自于FF14黑魔的核爆,消耗当前所有MP.

但是研究yanfly脚本的时候对于Custom TP Cost 稍微有点不太明白

<Custom TP Cost>
cost += $gameVariables.value(1);
</Custom TP Cost>

我不太清楚value(1)里面的数字怎么定义为 origin.tp 这样。。直接填进去提示错误。。

顺道想问一下战斗计算的时候是先消耗TP在进行战斗公式结算,能否先进行结算再触发战斗公式呢?

我的想法是设计一个 【A技能】:造成当前TP * 100的伤害 如果当前是满TP=100 就是造成10,000的伤害
但是如果TP消耗计算优先于战斗公式计算,这个伤害就会变为0

我有点脚本苦手,不知道该从哪里去学。只能从yanfly的一些tip和 RM论坛里面的一些既有公式里面照猫画虎。。。
如果有大佬能够指北一下该如何学习js也是可以的。。。。。。
作者: SailCat    时间: 2020-6-27 02:25
MV有没有技能附带公共事件的设定?
如果有的话:

技能消耗TP0
正常设置伤害公式,例如a.tp*100
然后附带公共事件里把使用者的tp清零

不要总想着“消耗”就是消耗,纯消耗,它完全可以作为技能本身的效果。
参考炉石的:禁忌咒文:0费卡,消耗你所有的法力值,召唤一个法力消耗等于你消耗法力值的怪物。
作者: wxx45600    时间: 2020-6-27 04:21
SailCat 发表于 2020-6-27 02:25
MV有没有技能附带公共事件的设定?
如果有的话:

感谢您提供的思路!

我去研究了一下 yanfly 的 skill core 插件

我发现是可以编辑技能的触发序列并且在里面插入公共事件的。

只是我比较难受的一点是公共事件不能很好的指定减少TP的目标

增减TP只能指定固定的角色,不能像 插件或者伤害公式一样用 a.tp 或者 origin.tp 来指定公共事件的目标

不知道怎么解决这个问题呢。。?
作者: moonyoulove    时间: 2020-6-27 08:04


這個插件裡面的custom,原理是計算tp消耗時,用eval執行設置好的代碼文本,rm預設的傷害公式計算也是此方法,eval執行時,如果使用了像cost這個變量,它會先在你的custom裡找是不是cost有定義,看看cost是什麼東西,此時沒找到,它會往它自己的外找尋,也就是eval被寫在的某個函數裡,所以像圖中item,user都能在custom裡面用,總之在代碼裡用到一個變量,在附近處找不到時,js就會往外找,再沒有再往外

以上都是廢話,重點就是在custom寫a.tp獲得當前tp,然後看是要存在哪裡,到了傷害公式時再獲得




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