| 
 
| 赞 | 0 |  
| VIP | 9 |  
| 好人卡 | 2 |  
| 积分 | 1 |  
| 经验 | 6442 |  
| 最后登录 | 2020-5-5 |  
| 在线时间 | 174 小时 |  
 Lv1.梦旅人 
	梦石0 星屑55 在线时间174 小时注册时间2008-9-17帖子387 | 
| 写了一个比较简单的...{:nm_3:}复制代码
#-------------------------------------------------------
# 2010-6-19
# 说明
# $g_weapon_class 中存放 武器与职业 的对应关系
# 第一个数是职业id,另一个是武器id
# 例: 1号武器对应1号职业,2号武器对应3号职业
# $g_weapon_class = {1=>1, 2=>2}
# 注意:每个武器只能对应一种职业,即不能出现 1=>1, 2=>1 的情况
# 若 $g_bForgetSkills = true 则换武器后遗忘原有技能,为false则不会
# 若 $g_bLearnSkills = true 则换武器后学习有技能,为false则不会
#-------------------------------------------------------
# 定义哈希表,用以存储与武器对应的职业编号
$g_weapon_class = {1=>1}
# 定义无职业的id号
$noClass = 9
# 定义布尔变量,用以判断是否遗忘原有职业技能
$g_bForgetSkills = true
$g_bLearnSkills = true
#--------------------------------------------------------
# 重定义装备数据显示界面(未实现)
# 重定义装备道具部分
class Game_Actor < Game_Battler
  def change_equip(equip_type, item, test = false)
    last_item = equips[equip_type]
    unless test
      return if $game_party.item_number(item) == 0 if item != nil
      $game_party.gain_item(last_item, 1)
      $game_party.lose_item(item, 1)
    end
    item_id = item == nil ? 0 : item.id
    case equip_type
    when 0  # 武器
      @weapon_id = item_id
      unless two_hands_legal?             # 非双手装备的场合,自动卸下装备
        change_equip(1, nil, test)
      end
      
      # 遗忘原职业技能
      if $g_bForgetSkills
        for i in self.class.learnings
          forget_skill(i.skill_id) if i.level <= @level
        end
      end
      
      # 变更职业
      @newClassID = $g_weapon_class.index(item_id)
      if @newClassID == nil
        @class_id = $noClass
      else
        @class_id = @newClassID
      end
      
      # 习得新职业技能
      if $g_bLearnSkills
        for i in self.class.learnings
          learn_skill(i.skill_id) if i.level <= @level
        end
      end
    when 1  # 盾
      @armor1_id = item_id
      unless two_hands_legal?             # 非双手装备的场合,自动卸下装备
        change_equip(0, nil, test)
      end
    when 2  # 头部防具
      @armor2_id = item_id
    when 3  # 身体防具
      @armor3_id = item_id
    when 4  # 装饰品
      @armor4_id = item_id
    end
  end
end
 | 
 |