查看: 2287|回复: 8

[已经解决] 伤害带小数

[复制链接]

迷途知返,恍如隔世

梦石
0
星屑
488
在线时间
1355 小时
注册时间
2011-2-17
回帖
1173

开拓者

发表于 2013-7-23 15:24:00 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 Anson 于 2013-7-23 15:25 编辑

RMXP,用的是自己修改过的战斗公式

      if skill.atk_f == 0                  
              power = [(user.level*0.4+2)*skill.power*user.int/(self.mdef*2)/50+2].max
        else
              power = [(user.level*0.4+2)*skill.power*user.str/(self.pdef*2)/50+2].max
            end
            
      self.damage = [power,0].max

可能运算过于复杂,输出的伤害是带小数的,怎么变成整数,球高手!
我在下面加了一句
power=power.round
也没用
梦石
0
星屑
55
在线时间
869 小时
注册时间
2009-3-13
回帖
730
发表于 2013-7-23 15:33:16 | 显示全部楼层
在self.damage = 之前加入试试看= =

点评

试了不行  发表于 2013-7-23 15:42
我的寒假活动作品:http://rpg.blue/forum.php?mod=viewthread&tid=281065
咱的龙蛋,求点击:
回复

使用道具 举报

万兽

梦石
0
星屑
602
在线时间
2271 小时
注册时间
2006-11-4
回帖
4701

贵宾

发表于 2013-7-23 15:37:32 | 显示全部楼层
最后将damage转换成整型,比如加上.to_i
回复

使用道具 举报

迷途知返,恍如隔世

梦石
0
星屑
488
在线时间
1355 小时
注册时间
2011-2-17
回帖
1173

开拓者

 楼主| 发表于 2013-7-23 15:48:08 | 显示全部楼层
弗雷德 发表于 2013-7-23 15:37
最后将damage转换成整型,比如加上.to_i

像这样?      self.damage =self.damage.to_i
我加在      # HP 的伤害减法运算  前面会跳错
回复

使用道具 举报

梦石
0
星屑
34467
在线时间
5096 小时
注册时间
2012-11-19
回帖
4715

开拓者

发表于 2013-7-23 16:21:34 | 显示全部楼层
user.level*0.4+2  改成:user.level*2/5+2
xp vx va mv  va mz 各类型脚本/插件定制
回复

使用道具 举报

迷途知返,恍如隔世

梦石
0
星屑
488
在线时间
1355 小时
注册时间
2011-2-17
回帖
1173

开拓者

 楼主| 发表于 2013-7-23 17:03:16 | 显示全部楼层
芯☆淡茹水 发表于 2013-7-23 16:21
user.level*0.4+2  改成:user.level*2/5+2

按你这个方法会出ZeroDivisionError

点评

user.level*2/5+2 不可能为 0 啊,是不是那一行报错哦?  发表于 2013-7-23 18:07
回复

使用道具 举报

梦石
0
星屑
34467
在线时间
5096 小时
注册时间
2012-11-19
回帖
4715

开拓者

发表于 2013-7-23 17:05:26 | 显示全部楼层
那换成[user.level*2/5+2, 1].max
恩,就这样

点评

无法解决………  发表于 2013-7-23 17:59
xp vx va mv  va mz 各类型脚本/插件定制
回复

使用道具 举报

迷途知返,恍如隔世

梦石
0
星屑
488
在线时间
1355 小时
注册时间
2011-2-17
回帖
1173

开拓者

 楼主| 发表于 2013-7-23 18:11:32 | 显示全部楼层
芯☆淡茹水 发表于 2013-7-23 17:05
那换成.max
恩,就这样

修改后仍是同行相同报错
回复

使用道具 举报

梦石
0
星屑
34467
在线时间
5096 小时
注册时间
2012-11-19
回帖
4715

开拓者

发表于 2013-7-23 18:22:18 | 显示全部楼层
报错这行:[(user.level*0.4+2)*skill.power*user.int/(self.mdef*2)/50+2].max
如果被攻击者的魔防:self.mdef 是 0 的话,就要报错,自己想办法改下,比如加一个定量什么的。

点评

OK,问题解决  发表于 2013-7-23 19:08

评分

参与人数 1星屑 +20 收起 理由
Anson + 20 认可答案

查看全部评分

xp vx va mv  va mz 各类型脚本/插件定制
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部