加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员  
 
x
 
之前求了个武器限定技能的脚本,在这里感谢一下芯☆淡茹水~ 
但是与使用的随机属性、装备强化发生了冲突,所以求修改一下,将它的判定方式由通过名称判定改成通过备注判定 
=begin *黯淡的流星所加注释:该脚本的使用方法 在武器的名称(注意是名称!)后写上 ,数字就可以将此武器定义为x类型(X为填写的数字) 例如:长剑,1 就是说,此武器的名字是“长剑”,类型是1   在技能的名称后写上 ,数字就可以这个技能定义为x类型,只有在装备了相同类型的武器时 才能使用,例如:重斩,1 就是说技能“重斩”只有在装备1类型武器时才能使用   当武器名称后没有填写时,默认该武器类型为0,在装备该武器时无法使用任何定义了类型 的技能   当技能名称后没有填写时,默认该技能类型为0,在装备任何武器时都可以使用   注意:逗号用半角!用半角!用半角!重要的事情说三遍 =end #============================================================================== module RPG   class Skill < UsableItem     def name       return @name.split(/,/)[0] != nil ? @name.split(/,/)[0] : ""     end     def weapon_limit_id       return @name.split(/,/)[1] != nil ? @name.split(/,/)[1].to_i : 0     end   end   class Weapon < BaseItem     def name       return @name.split(/,/)[0] != nil ? @name.split(/,/)[0] : ""     end     def kind       return @name.split(/,/)[1] != nil ? @name.split(/,/)[1].to_i : 0     end   end end #-------------------------------------------------------------------------- class Game_Actor < Game_Battler   def skill_can_use?(skill)     return false unless skill_learn?(skill)     return false if weapon_limit(skill)     return super   end   def weapon_limit(skill)     return true unless skill.is_a?(RPG::Skill)     return false if skill.weapon_limit_id == 0     data = weapons.find{|w| next if w.nil?;w.kind == skill.weapon_limit_id}     return data.nil?   end end #============================================================================== 
 
 =begin  
*黯淡的流星所加注释:该脚本的使用方法  
在武器的名称(注意是名称!)后写上 ,数字就可以将此武器定义为x类型(X为填写的数字)  
例如:长剑,1 就是说,此武器的名字是“长剑”,类型是1  
   
在技能的名称后写上 ,数字就可以这个技能定义为x类型,只有在装备了相同类型的武器时  
才能使用,例如:重斩,1 就是说技能“重斩”只有在装备1类型武器时才能使用  
   
当武器名称后没有填写时,默认该武器类型为0,在装备该武器时无法使用任何定义了类型  
的技能  
   
当技能名称后没有填写时,默认该技能类型为0,在装备任何武器时都可以使用  
   
注意:逗号用半角!用半角!用半角!重要的事情说三遍  
=end  
#==============================================================================  
module RPG  
  class Skill < UsableItem  
    def name  
      return @name.split(/,/)[0] != nil ? @name.split(/,/)[0] : ""  
    end  
    def weapon_limit_id  
      return @name.split(/,/)[1] != nil ? @name.split(/,/)[1].to_i : 0  
    end  
  end  
  class Weapon < BaseItem  
    def name  
      return @name.split(/,/)[0] != nil ? @name.split(/,/)[0] : ""  
    end  
    def kind  
      return @name.split(/,/)[1] != nil ? @name.split(/,/)[1].to_i : 0  
    end  
  end  
end  
#--------------------------------------------------------------------------  
class Game_Actor < Game_Battler  
  def skill_can_use?(skill)  
    return false unless skill_learn?(skill)  
    return false if weapon_limit(skill)  
    return super  
  end  
  def weapon_limit(skill)  
    return true unless skill.is_a?(RPG::Skill)  
    return false if skill.weapon_limit_id == 0  
    data = weapons.find{|w| next if w.nil?;w.kind == skill.weapon_limit_id}  
    return data.nil?  
  end  
end  
#==============================================================================  
 
  |