| 
 
| 赞 | 0 |  
| VIP | 0 |  
| 好人卡 | 0 |  
| 积分 | 1 |  
| 经验 | 1485 |  
| 最后登录 | 2015-2-1 |  
| 在线时间 | 8 小时 |  
 Lv1.梦旅人 
	梦石0 星屑50 在线时间8 小时注册时间2010-7-26帖子41 | 
| 刚好在弄这个二刀流脚本,也遇到这问题,今天研究一下午才搞定 怕有人以后也遇到类似问题多花费冤枉时间,就分享一下
 可能很多人早就知道,就请无视
 原二刀流脚本
 Scene_Equip
 @actor.equip(equip_type(@right_window.index, item), item == nil ? 0 : item.id)
 改成
 if  @right_window.index == 1
 @actor.equip(equip_type(@right_window.index, item), item == nil ? 0 : item.id)
 else
 @actor.equip(@right_window.index , item == nil ? 0 : item.id)
 end
 即可
 会这样改是因为二刀流武器的位置设置是-1,盾是1
 看最下面的定义
 def equip_type(index, item)
 return index * (item.is_a?(RPG::Armor) ? 1 : -1)
 end
 这是说如果item是防具那index(右边窗口的光标位置,从0开始)就乘1,不是防具就乘-1
 所以若item是武器,index(拿盾那格是1)乘-1 =>index等于-1
 就得出二刀流武器位置的设置了
 当然如果index == 2,3,4….结果就乱七八糟
 所以前面加上 if  @right_window.index == 1 来条件判断
 其它情况就照预设的执行就好
 解说完毕!
 
 | 
 |