Project1

标题: 关于如何实现正常“-1”的强制伤害 [打印本页]

作者: FOGGG    时间: 2018-4-21 16:10
标题: 关于如何实现正常“-1”的强制伤害
问题如上···

我想让怪物在攻击我方或我方攻击怪物时,即便目标防御力再高,
也能打出强制性的1点伤害 而并非 0。

我试过自己摸索  通过 效果 恢复HP-1 来实现强制伤害,
额 虽然伤害没错,但哪怕一下打死了上万HP的目标也只会显示 -1
没错就是表现伤害数值的显示不对···

用计算公式1+(攻击力-防御力),好吧完全是错的,而且伤害都负数了

使用强制战斗行动···整体看起来像 二连击 感觉很奇怪

以上就是昨天一晚上的结果,现在发帖试胆问问,可能这问题有点没必要
因为我完全可以无视这点,只需要提高所有攻击力 HP数值(无论如何都能打出伤害)

如果有大佬能帮我解决问题再好不过了
作者: 风之竹    时间: 2018-4-21 16:13
1+(伤害公式)  这样打不出强制1伤害吗?
作者: yang1zhi    时间: 2018-4-21 16:20
找到
Game_Action.prototype.executeDamage = function(target, value) {

在下面第一行加上一行
if (value == 0) {var value = 1}
作者: FOGGG    时间: 2018-4-21 16:40
风之竹 发表于 2018-4-21 16:13
1+(伤害公式)  这样打不出强制1伤害吗?

假如1+(a.5 - b.10)
1+ -5= -5
结果还是0伤害

作者: FOGGG    时间: 2018-4-21 17:07
yang1zhi 发表于 2018-4-21 16:20
找到
Game_Action.prototype.executeDamage = function(target, value) {

感谢大佬,照做之后真的能实现强制伤害了
(果然会脚本的就是能为所欲为233)
作者: yang1zhi    时间: 2018-4-21 17:12
FOGGG 发表于 2018-4-21 17:07
感谢大佬,照做之后真的能实现强制伤害了
(果然会脚本的就是能为所欲为233) ...

不过这样应该会造成无伤技能也会减一血
应该再加个判断。
比如加个命中类型的判断
if (this.item().hitType == 0 && value == 0) {var value = 1 }
作者: 梦想家大魔王    时间: 2018-4-21 19:30
建议你重新设计伤害公式吧,默认的那个公式有可能出现负数的,所以即使你固定加1了也还是有可能无效。
我的做法是在伤害公式中去除目标防御力的因素,根据公式计算出的值永远是正数。而目标的防御力,则搭配YEP_X_ArmorScaling插件,赋予其按比例减伤的功能。
作者: tseyik    时间: 2018-4-22 09:04
本帖最后由 tseyik 于 2018-4-22 09:11 编辑

Math.max(m,1)
m為傷害計算式,最低傷害指定為不小於1

Math.max((a攻击力-b防御力),1)
max改成min, 則為最高傷害指定

Math.min(m,50)
最高傷害指定不超過50




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