Project1

标题: 【战斗被动状态】 [打印本页]

作者: VIPArcher    时间: 2014-11-2 10:53
标题: 【战斗被动状态】
RUBY 代码复制
  1. #===============================================================================
  2. # ■ 战斗中自动附加被动状态
  3. # By :VIPArcher
  4. #  -- 本脚本来自 [url]https://rpg.blue[/url] 使用或转载请保留以上信息。
  5. #==============================================================================
  6. # ■ 在战斗开始时自动为每一位战斗者附加上设置好的状态,战斗结束时移除
  7. # 使用说明:
  8. #   在角色|职业|装备|敌人的备注栏备注<被动状态:状态ID> 例如 <被动状态:18>
  9. #   同时备注多个被动状态亦可叠加,都会为其附加上对应的状态。
  10. #   状态的备注栏应该也可以用,只要战斗开始前有某状态亦可附加上该状态备注栏里指定对的状态
  11. #==============================================================================
  12. $VIPArcherScript ||= {};$VIPArcherScript[:battle_state] = 20141102
  13. #==============================================================================
  14. # ■ Game_Battler
  15. #==============================================================================
  16. class Game_Battler < Game_BattlerBase
  17.   #--------------------------------------------------------------------------
  18.   # ● 战斗开始处理
  19.   #--------------------------------------------------------------------------
  20.   alias state_battle_start on_battle_start
  21.   def on_battle_start
  22.     state_battle_start
  23.     self.feature_objects.each {|obj| obj.note.split(/[\r\n]+/).each{ |line|
  24.     self.add_state($1.to_i) if line =~ /<被动状态:\s*(\d+)>/}}
  25.   end
  26.   #--------------------------------------------------------------------------
  27.   # ● 战斗行动结束时的处理
  28.   #--------------------------------------------------------------------------
  29.   alias state_on_battle_end on_battle_end
  30.   def on_battle_end
  31.     state_on_battle_end
  32.     self.feature_objects.each {|obj| obj.note.split(/[\r\n]+/).each{ |line|
  33.     self.remove_state($1.to_i) if line =~ /<被动状态:\s*(\d+)>/}}
  34.   end
  35. end





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