rebf-gaiden/Scripts/_.52.rb
2025-04-26 17:06:34 -05:00

60 lines
No EOL
3 KiB
Ruby
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#==============================================================================
# ■ RGSS3 イベントステート付与/解除不具合修正 Ver1.01 by 星潟
#------------------------------------------------------------------------------
# イベントコマンドでステートを一度解除してから
# ステート付与を行うと、ステート付与が無効化される不具合を修正します。
# VXAce_SP1で修正されたように見えますが、あの修正では不完全です。
#==============================================================================
# [×]VXAce_SP1なし
# 不具合発生の手順を踏む事で無条件に不具合発生。
#------------------------------------------------------------------------------
# [△]VXAce_SP1あり
# 不具合発生の手順を踏む事で
# 味方パーティメンバーのみ不具合の影響を受けない
# パーティにいないアクター、戦闘中であれば、戦闘メンバー以外のアクターや
# 敵側は不具合の影響をしっかり受けてしまう。
#------------------------------------------------------------------------------
# [○]本スクリプト導入
# 不具合発生の手順を踏んでも異常は起きない。
#==============================================================================
class Game_Temp
attr_accessor :event_state_changing
end
class Game_Interpreter
#--------------------------------------------------------------------------
# ステートの変更
#--------------------------------------------------------------------------
alias command_313_event_state_changing command_313
def command_313
$game_temp.event_state_changing = true
command_313_event_state_changing
$game_temp.event_state_changing = nil
end
#--------------------------------------------------------------------------
# 敵キャラのステート変更
#--------------------------------------------------------------------------
alias command_333_event_state_changing command_333
def command_333
$game_temp.event_state_changing = true
command_333_event_state_changing
$game_temp.event_state_changing = nil
end
end
class Game_Battler < Game_BattlerBase
#--------------------------------------------------------------------------
# ステートの付加
#--------------------------------------------------------------------------
alias add_state_event_state_changing add_state
def add_state(state_id)
add_state_event_state_changing(state_id)
@result.clear_status_effects if $game_temp.event_state_changing
end
#--------------------------------------------------------------------------
# ステートの解除
#--------------------------------------------------------------------------
alias remove_state_event_state_changing remove_state
def remove_state(state_id)
remove_state_event_state_changing(state_id)
@result.clear_status_effects if $game_temp.event_state_changing
end
end