Project1

标题: 请问有没有类似DNF狂战士那种血量越低技能伤害越高的脚本 [打印本页]

作者: liujinjie9999    时间: 2017-7-26 15:39
标题: 请问有没有类似DNF狂战士那种血量越低技能伤害越高的脚本
请各位大神帮帮忙
作者: 九尾的百合伞    时间: 2017-7-27 02:32
这用不着脚本吧
作者: soulsaga    时间: 2017-7-27 13:28
像VA那样有技能公式就不用脚本..
作者: yang1zhi    时间: 2017-7-27 14:13
本帖最后由 yang1zhi 于 2017-7-27 14:19 编辑

在脚本里找到计算伤害的地方,稍微改动一下就可以了。
默认的应该是在def skill_effect(user, skill)里面
self.damage这个是伤害。self.damage = power * rate / 20

# 计算威力
      power = skill.power + user.atk * skill.atk_f / 100
计算伤害里面有用到POWER这个变量。
这条是POWER这个变量的计算。你想根据血量设置,那在里面加个血量就行了。
你可以乘以血量。或者除以血量,这里就根据数学自己发挥了。
.HP是当前血量
.MAXHP是最大血量
user是使用者
self是被打者
作者: liujinjie9999    时间: 2017-7-27 14:26
yang1zhi 发表于 2017-7-27 14:13
在脚本里找到计算伤害的地方,稍微改动一下就可以了。
默认的应该是在def skill_effect(user, skill)里面
s ...

可是我只是想某些人这样伤害计算怎么弄呢
作者: liujinjie9999    时间: 2017-7-27 14:27
soulsaga 发表于 2017-7-27 13:28
像VA那样有技能公式就不用脚本..

可是我用的是XP。。。
作者: liujinjie9999    时间: 2017-7-27 14:29
九尾的百合伞 发表于 2017-7-27 02:32
这用不着脚本吧

那请问怎么实现这个设置呢?
作者: yang1zhi    时间: 2017-7-27 15:07
本帖最后由 yang1zhi 于 2017-7-27 15:08 编辑
liujinjie9999 发表于 2017-7-27 14:29
那请问怎么实现这个设置呢?


这个问题比较广泛。只是说血越少伤害越高。并没有说按什么比例,怎么计算。
只是求伤害的话,可以直接把
self.damage进行修改,首先你要知道伤害和攻击的区别。伤害是减多少HP,而攻击是还没进行伤害计算。
所以你要给你个结果的话。
那么。self.damage = power * rate / 20下面加一句
self.damage *=  user.hp/user.maxhp

如果要限定哪个技能的话。就是
if skill.id == 技能ID
self.damage *=  user.hp/user.maxhp
end
作者: porlutia    时间: 2017-7-27 15:20
本帖最后由 porlutia 于 2017-7-27 15:24 编辑

如果是单一技能的话  可以这么写  
self.damage = power * rate / 20 * (2 - user.hp/user.maxhp) if skill.id == x #如果技能id为x  技能伤害为原计算公式计算的伤害 乘上2减去剩余HP的百分比  
比如 MAXHP是200 你剩下50 那加成就是 2 -  50/200 也就是 1-50/200+1 也就是 1.75 就是说 如果你MAXHP200 你当前HP50的情况下 你的技能伤害会是原来的1.75倍

作者: liujinjie9999    时间: 2017-7-27 22:45
porlutia 发表于 2017-7-27 15:20
如果是单一技能的话  可以这么写  
self.damage = power * rate / 20 * (2 - user.hp/user.maxhp) if skill ...

请问这个改动在哪个脚本里面呢?
作者: liujinjie9999    时间: 2017-7-27 22:45
yang1zhi 发表于 2017-7-27 15:07
这个问题比较广泛。只是说血越少伤害越高。并没有说按什么比例,怎么计算。
只是求伤害的话,可以直接把
...

请问这个改动在哪个脚本里面呢   XP脚本我看了没找到啊
作者: liujinjie9999    时间: 2017-7-27 23:20
porlutia 发表于 2017-7-27 15:20
如果是单一技能的话  可以这么写  
self.damage = power * rate / 20 * (2 - user.hp/user.maxhp) if skill ...

好的我去试试   万分感谢
作者: guoxiaomi    时间: 2017-7-28 01:04
是时候吹一波我签名里的战斗调用公共事件了




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