赞 | 0 |
VIP | 0 |
好人卡 | 1 |
积分 | 1 |
经验 | 1150 |
最后登录 | 2012-1-26 |
在线时间 | 30 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 30 小时
- 注册时间
- 2011-4-22
- 帖子
- 9
|
你可以到帮助里去看下,有一个叫角色数据类RPG::Actor,这里的attacker其实代入的是这个类得成员,所以从id到armor4_fix这些属性attacker都可以用
要换成防具只要将a += (attacker.weapon_id == 5)?1:0 这里的判断改成
a += (attacker.armor1_id == 5)?1:0 ,那么判断的就是是否装备了id号为5的盾
你说的加上20%的会心,严格来计算的话
rand(100) < 4 * attacker.dex / self.agi
这个式子的右边取决于攻击者的灵巧和受到伤害对象的速度,假设都不变,即假设4 * attacker.dex / self.agi为常量a,在其不变的状态下增长20%的会心
rand(100)是在0~99间随机产生一个整数,视其为几率相等的状况,每个数产生的几率为1/100,那么低于常量a的情况有a%的可能,超出100%就是次次会心
要想让会心增长20%,假设修改了常量a,使其变为b
那么a(1+20%) = b,所以只要把rand(100) < 4 * attacker.dex / self.agi
改成rand(100) < 4 * attacker.dex * 1.2/ self.agi即可
把这个式子放在when 2的判定条件下,如果卸下装备了则自动回到when 0..1的条件,20%的会心加成也就消失了 |
|