#==============================================================================
# ■ RGSS3 戦闘不能時残留ステート Ver1.01 by 星潟
#------------------------------------------------------------------------------
# 戦闘不能に陥った際、消去されないステートを作成します。
# 用于那些全恢复时也不想要他消除的状态
# 設定方法.
# ステート欄に<残留>と記入する。
#
# Ver1.01
# 全回復時・逃走の処理でも戦闘不能時残留ステートの効果が表れていた問題を修正。
#==============================================================================
module UnclearableState
#ステートのメモ欄に記入する為の設定用ワード
WORD = "<残留>"
end
#==============================================================================
# ■ Game_BattlerBase
#------------------------------------------------------------------------------
# バトラーを扱う基本のクラスです。主に能力値計算のメソッドを含んでいます。こ
# のクラスは Game_Battler クラスのスーパークラスとして使用されます。
#==============================================================================
class Game_BattlerBase
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
alias initialize_un_s initialize
def initialize
initialize_un_s
clear_states2
end
#--------------------------------------------------------------------------
# ● 全回復
#--------------------------------------------------------------------------
alias recover_all_un_s recover_all
def recover_all
recover_all_un_s
clear_states2
end
#--------------------------------------------------------------------------
# ● ステート情報をクリア
#--------------------------------------------------------------------------
def clear_states
@states = [] if @states == nil
stc = 0
stcl = []
stcl_turns = {}
stcl_steps = {}
for state in @states
if state != nil && $data_states[state].note.include?(UnclearableState::WORD)
stcl.push(@states[stc])
stcl_turns[state] = @state_turns[state]
stcl_steps[state] = @state_steps[state]
end
stc += 1
end
@states = stcl
@state_turns = stcl_turns
@state_steps = stcl_steps
end
#--------------------------------------------------------------------------
# ● ステート情報をクリア
#--------------------------------------------------------------------------
def clear_states2
@states = []
@state_turns = {}
@state_steps = {}
end
end
class Game_Battler < Game_BattlerBase
#--------------------------------------------------------------------------
# ● 逃げる
#--------------------------------------------------------------------------
alias escape_un_s escape
def escape
escape_un_s
clear_states2
end
end