전투

전투불능 케릭터 강제삭제

by 독도2005 posted Oct 05, 2008
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

# 액터 서바이벌 (Since 2006/01/08)
# by Tetra-Z
# 출처 : 십자군의 RPG 세상
# 액터가 전투 불능이 되면 강제 이탈!그렇다고 하는 전율 사양이 되는 스크립트.

#==============================================================================
# ■ Game_Battler
#==============================================================================
class Game_Battler
  #--------------------------------------------------------------------------
  # ● HP 의 변경
  #--------------------------------------------------------------------------
  alias tetraz55_hp_writer hp=
  def hp=(hp)
    tetraz55_hp_writer(hp)
    if (self.is_a?(Game_Actor) and self.dead? and
        !(@reraised or $game_temp.in_battle))
      $game_party.remove_actor(self.id)
    end
  end
end
#==============================================================================
# ■ Scene_Item
#==============================================================================
class Scene_Item
  #--------------------------------------------------------------------------
  # ● 프레임 갱신 (타겟 윈도우가 액티브의 경우)
  #--------------------------------------------------------------------------
  alias tetraz55_update_target update_target
  def update_target
    tetraz55_update_target
    @target_window.index = $game_party.actors.size - 1 if @target_window.index >= $game_party.actors.size
  end
end
#==============================================================================
# ■ Scene_Skill
#==============================================================================
class Scene_Skill
  #--------------------------------------------------------------------------
  # ● 프레임 갱신 (타겟 윈도우가 액티브의 경우)
  #--------------------------------------------------------------------------
  alias tetraz55_update_target update_target
  def update_target
    tetraz55_update_target
    @target_window.index = $game_party.actors.size - 1 if @target_window.index >= $game_party.actors.size
  end
end
#==============================================================================
# ■ Scene_Battle
#==============================================================================
class Scene_Battle
  #--------------------------------------------------------------------------
  # ● 프레임 갱신 (메인 국면 스텝 6 : 리프레쉬)
  #--------------------------------------------------------------------------
  alias tetraz55_update_phase4_step6 update_phase4_step6
  def update_phase4_step6
    tetraz55_update_phase4_step6
    last_party = $game_party.actors.dup
    for actor in last_party
      $game_party.remove_actor(actor.id) if actor.dead?
    end
    if $game_party.actors != last_party
      @status_window.refresh
      @cp_window.refresh unless @cp_window.nil?
    end
  end
end