| 赞 | 2 |
| VIP | 0 |
| 好人卡 | 0 |
| 积分 | 1 |
| 经验 | 46498 |
| 最后登录 | 2020-5-5 |
| 在线时间 | 576 小时 |
Lv1.梦旅人 呃
- 梦石
- 0
- 星屑
- 55
- 在线时间
- 576 小时
- 注册时间
- 2006-7-18
- 帖子
- 236
|
做出来了....()-v-居然花了20分钟..汗..开始思路错误..
首先,在Game_Actor与Game_Enemy里分别添加:
- def plus_state_set2
- armor = $data_armors[@armor1_id]
- return armor != nil ? armor.guard_state_set : []
- end
复制代码
- def plus_state_set2
- return []
- end
复制代码
添加的位置可以位于def plus_state_set内容的下面.
接下来,在Game_Battler 2里找到def states_minus(minus_state_set),在它的上面一行添加
- def states_plus2(plus_state_set2)
- for i in plus_state_set2
- unless self.state_guard?(i)
- effective |= self.state_full?(i) == false
- if $data_states[i].nonresistance
- @state_changed = true
- add_state(i)
- elsif self.state_full?(i) == false
- if rand(100) < [0,100,80,60,40,20,0][self.state_ranks[i]]
- @state_changed = true
- add_state(i)
- end
- end
- end
- end
- return effective
- end
复制代码
最后在Game_Battler 3里找到states_plus(attacker.plus_state_set),在它的下面一行添加
- states_plus2(attacker.plus_state_set2)
复制代码
这样应该就没有问题了,攻击时向敌人附加防具1(也就是盾的位置)所能防御的状态,比如防具1在数据库中设置为能防御1号状态,那么攻击敌人时,就向敌人附加这一状态.
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~ |
|