Project1

标题: 如何给装备设置一个耐久度攻击一次减少1点 [打印本页]

作者: q1140038    时间: 2018-3-14 22:23
标题: 如何给装备设置一个耐久度攻击一次减少1点
如题。求大神帮忙。
作者: 不死鸟之翼    时间: 2018-3-15 00:11
放置在插件区即可。鉴于你没有详细的描述需求…
默认所有武器耐久度10,攻击或使用技能一次减少1,双重攻击每次减少1,耐久度到0之后无法选择对应的指令,双重攻击的第二击到0仍然有效。
你可以做个恢复耐久度的物品,对人使用后把它的武器durability加上去

RUBY 代码复制
  1. class Game_BaseItem
  2.   attr_accessor :durability
  3.   alias initialize_bfca0d3a79042ed8 initialize
  4.   def initialize
  5.     initialize_bfca0d3a79042ed8
  6.     @durability=10
  7.   end
  8. end
  9.  
  10. class Game_Actor
  11.   def get_weapon
  12.     return @equips[0]
  13.   end
  14. end
  15.  
  16. class Game_BattlerBase
  17.   alias usable_efe2e69d78eceb51 usable?
  18.   def usable?(skill)
  19.     if self.is_a?(Game_Actor)&&skill.is_a?(RPG::Skill)
  20.       if !self.weapons.empty?
  21.         w=self.get_weapon
  22.         if w.durability<=0
  23.           return skill.id==2
  24.         end
  25.       else
  26.         return skill.id==2
  27.       end
  28.     end
  29.     usable_efe2e69d78eceb51(skill)
  30.   end
  31. end
  32.  
  33. class Game_Battler
  34.   alias item_apply_e17c250161634ead item_apply
  35.   def item_apply(user, item)
  36.     item_apply_e17c250161634ead(user,item)
  37.     if user.is_a?(Game_Actor)
  38.       if item.is_a?(RPG::Skill)&&item.id!=2
  39.         if !user.weapons.empty?
  40.           w=user.get_weapon
  41.           w.durability=w.durability-1 if w.durability>0
  42.           p w.durability
  43.         end
  44.       end
  45.     end
  46.   end
  47. end

作者: q1140038    时间: 2018-3-15 12:11
不死鸟之翼 发表于 2018-3-15 00:11
放置在插件区即可。鉴于你没有详细的描述需求…
默认所有武器耐久度10,攻击或使用技能一次减少1,双重攻击 ...

貌似。。。。没效果。。。。
作者: q1140038    时间: 2018-3-15 14:39
q1140038 发表于 2018-3-15 12:11
貌似。。。。没效果。。。。

额。不能设置在物品中可以看见的吗?

作者: q1140038    时间: 2018-3-15 23:09
q1140038 发表于 2018-3-15 14:39
额。不能设置在物品中可以看见的吗?

好吧、表示小白一枚。不过还是谢谢你




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1