|
发表于 2008-11-2 17:11:35
|
显示全部楼层
- #--------------------------------------------------------------------------
- # ● 应用连续伤害效果
- #--------------------------------------------------------------------------
- def slip_damage_effect
- # 设置伤害
- self.damage = self.maxhp / 10
- # 分散
- if self.damage.abs > 0
- amp = [self.damage.abs * 15 / 100, 1].max
- self.damage += rand(amp+1) + rand(amp+1) - amp
- end
- # HP 的伤害减法运算
- self.hp -= self.damage
- # 过程结束
- return true
- end
复制代码
这是连续伤害 的 掉血计算的函数。。。。你看一下状态“毒”就是用这个来做的
那么连续加学。。很简单。。。和“毒”正好想反么。。。
那么做一个标记就可以了。。。。比如。。。状态的名字改成“毒@-”
在脚本最前面添加。。。
- module RPG
- class State
- def name
- return @name.split('@')[0]
- end
- def add_hp?
- unless @name.split('@')[1] == '-'
- return false
- else
- return true
- end
- end
- end
- end
复制代码
game_battler 中添加
- #--------------------------------------------------------------------------
- # ● 判断状态 [连续加血]
- #--------------------------------------------------------------------------
- def add_hp?
- for i in @states
- if $data_states[i].add_hp?
- return true
- end
- end
- return false
- end
复制代码
自己搜索那里有连续伤害的判定。。。。加入add_hp? 的判定
加入判定真(true)那么就不是减血。。。改成加血。。。。
明白了么?我说得比较乱。。OTL。。。 |
|