赞 | 0 |
VIP | 1 |
好人卡 | 0 |
积分 | 1 |
经验 | 1773 |
最后登录 | 2014-4-18 |
在线时间 | 8 小时 |
Lv1.梦旅人 ℃ake
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 8 小时
- 注册时间
- 2009-6-6
- 帖子
- 787
|
哦,原来状态是额外算命中几率的。
您的意思就是说,状态需要计算3次命中率。
普通非状态特技只需要计算2次命中率。
必须全部都等于true才算命中。是这个意思吗?
按照原来计算的,我测试的时候300灵巧,如果特技的命中率是70%,那么第一命中一定会通过。- # 第二命中判定
- eva = 8 * self.agi / user.dex + self.eva
- hit = self.damage < 0 ? 100 : 100 - eva * skill.eva_f / 100
- hit = self.cant_evade? ? 100 : hit
- hit_result = (rand(100) < hit)
- # 不确定的特技的情况下设置为有效标志
- effective |= hit < 100
- end
复制代码 意思我们一句一句来分析。
eva = 8 * self.agi / user.dex + self.eva
回避 = 8 * 自己的速度 / 使用者的灵巧 + 自己的回避
hit = self.damage < 0 ? 100 : 100 - eva * skill.eva_f / 100
命中率 = 自己的威力 < 0 吗?如果是,就100。:否则 100 - 之前算出的回避。
OK,下面的我也看不懂了,不过问题就出来了。
经过我的测试,我那存档300灵巧,加上一个命中率70%,威力为-100的恢复特技。
第一命中率应该是可以完全超过100%的。
而第二命中命中率 = 自己的威力 < 0 吗?如果是,就100。
由于恢复招式威力是负数,所以无论如何,命中率都是100%。
按照您的意思,只要恢复类招式通过这两个命中率返回true就可以命中了吧?
但是,经过我的测试,推气过宫的特技的命中率仍然接近70%,仍然有可能不命中。
意思也就是说第一命中并没有生效? |
|