设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2624|回复: 7
打印 上一主题 下一主题

[有事请教] 关于如何实现正常“-1”的强制伤害

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1206
在线时间
129 小时
注册时间
2017-1-5
帖子
11
跳转到指定楼层
1
发表于 2018-4-21 16:10:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
问题如上···

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

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

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

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

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

如果有大佬能帮我解决问题再好不过了

Lv3.寻梦者

梦石
0
星屑
1410
在线时间
183 小时
注册时间
2017-1-29
帖子
92
2
发表于 2018-4-21 16:13:43 | 只看该作者
1+(伤害公式)  这样打不出强制1伤害吗?
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

3
发表于 2018-4-21 16:20:17 | 只看该作者
找到
Game_Action.prototype.executeDamage = function(target, value) {

在下面第一行加上一行
if (value == 0) {var value = 1}
回复 支持 1 反对 0

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1206
在线时间
129 小时
注册时间
2017-1-5
帖子
11
4
 楼主| 发表于 2018-4-21 16:40:21 | 只看该作者
风之竹 发表于 2018-4-21 16:13
1+(伤害公式)  这样打不出强制1伤害吗?

假如1+(a.5 - b.10)
1+ -5= -5
结果还是0伤害
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1206
在线时间
129 小时
注册时间
2017-1-5
帖子
11
5
 楼主| 发表于 2018-4-21 17:07:10 | 只看该作者
yang1zhi 发表于 2018-4-21 16:20
找到
Game_Action.prototype.executeDamage = function(target, value) {

感谢大佬,照做之后真的能实现强制伤害了
(果然会脚本的就是能为所欲为233)
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

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

不过这样应该会造成无伤技能也会减一血
应该再加个判断。
比如加个命中类型的判断
if (this.item().hitType == 0 && value == 0) {var value = 1 }
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7422
在线时间
948 小时
注册时间
2017-9-27
帖子
583
7
发表于 2018-4-21 19:30:07 | 只看该作者
建议你重新设计伤害公式吧,默认的那个公式有可能出现负数的,所以即使你固定加1了也还是有可能无效。
我的做法是在伤害公式中去除目标防御力的因素,根据公式计算出的值永远是正数。而目标的防御力,则搭配YEP_X_ArmorScaling插件,赋予其按比例减伤的功能。
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
21972
在线时间
8569 小时
注册时间
2011-12-31
帖子
3362
8
发表于 2018-4-22 09:04:48 | 只看该作者
本帖最后由 tseyik 于 2018-4-22 09:11 编辑

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

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

Math.min(m,50)
最高傷害指定不超過50
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-6 16:06

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表