Project1

标题: 修改战斗计算式 [打印本页]

作者: rock吧    时间: 2013-7-21 14:10
标题: 修改战斗计算式
我想把战斗计算式改为
(攻击方的LV×0.4+2)×技能威力×攻击方的攻击÷防御方的防御÷50+2。
怎么修改战斗计算式呢?
作者: wingzeroplus    时间: 2013-7-21 16:41
攻击方的LV这个有疑问,我方有LV,但敌方没有,战斗计算公式是双方共用,所以你必须重新给每个敌人设置LV才行
改的话是在Game_Battler 3下面127行
# 计算威力
      power = skill.power + user.atk * skill.atk_f / 100
按照自己思路改掉这个即可
作者: rock吧    时间: 2013-7-21 17:53
那把lv改成魔力值吧!
作者: rock吧    时间: 2013-7-21 17:57
我改的:
power = (user.int * 0.4 + 2) * skill.atk * (user.str + usr.atk) / self.dex + 2
但还是出错了,看看哪里错了
作者: rock吧    时间: 2013-7-22 12:58
我修改后,终于成功了,但攻击时出现了无限循环小数,怎么办??
作者: 芯☆淡茹水    时间: 2013-7-22 13:18
那个 user.int * 0.4 是小数,所以整个就按小数在计算。 可把:user.int * 0.4换成:user.int * 2 / 5
作者: 芯☆淡茹水    时间: 2013-7-22 13:19
那个 user.int * 0.4 是小数,所以整个就按小数在计算。 可把:user.int * 0.4换成:user.int * 2 / 5
作者: f26401004    时间: 2013-7-22 15:34
如果有小數那就捨去小數點後面的數值,或者取到最接近的數值吧。
用 truncate 或 round 就可以。
例如 -> self.damage = self.damage.truncate
           self.damage = self.damage.round

作者: rock吧    时间: 2013-7-23 12:59
我知道了,谢谢!




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