131 lines
No EOL
5.4 KiB
Ruby
131 lines
No EOL
5.4 KiB
Ruby
#==============================================================================
|
|
# ■ Window_Base
|
|
#------------------------------------------------------------------------------
|
|
# ゲーム中の全てのウィンドウのスーパークラスです。
|
|
#==============================================================================
|
|
|
|
class Window_Base < Window
|
|
#--------------------------------------------------------------------------
|
|
# ○ スキン画像変更
|
|
#--------------------------------------------------------------------------
|
|
def skin_change(flag)
|
|
if flag
|
|
self.windowskin = Cache.system("Window_b")
|
|
else
|
|
self.windowskin = Cache.system("Window")
|
|
end
|
|
end
|
|
end
|
|
|
|
#==============================================================================
|
|
# ■ Window_Message
|
|
#------------------------------------------------------------------------------
|
|
# 文章表示に使うメッセージウィンドウです。
|
|
#==============================================================================
|
|
|
|
class Window_Message < Window_Base
|
|
#--------------------------------------------------------------------------
|
|
# ● オブジェクト初期化
|
|
#--------------------------------------------------------------------------
|
|
alias skin_change_initialize initialize
|
|
def initialize
|
|
skin_change_initialize
|
|
skin_change($game_system.skin_change_flag)
|
|
end
|
|
end
|
|
|
|
#==============================================================================
|
|
# ■ Game_System
|
|
#------------------------------------------------------------------------------
|
|
# システム周りのデータを扱うクラスです。セーブやメニューの禁止状態などを保存
|
|
# します。このクラスのインスタンスは $game_system で参照されます。
|
|
#==============================================================================
|
|
|
|
class Game_System
|
|
#--------------------------------------------------------------------------
|
|
# ● 公開インスタンス変数
|
|
#--------------------------------------------------------------------------
|
|
attr_accessor :skin_change_flag #
|
|
attr_accessor :skin_change #
|
|
#--------------------------------------------------------------------------
|
|
# ● オブジェクト初期化
|
|
#--------------------------------------------------------------------------
|
|
alias event_skin_initialize initialize
|
|
def initialize
|
|
event_skin_initialize
|
|
skin_flag_reset
|
|
end
|
|
#--------------------------------------------------------------------------
|
|
# ○ スキンフラグリセット
|
|
#--------------------------------------------------------------------------
|
|
def skin_flag_reset
|
|
@skin_change_flag = false
|
|
@skin_change = false
|
|
end
|
|
#--------------------------------------------------------------------------
|
|
# ○ エッチイベントON
|
|
#--------------------------------------------------------------------------
|
|
alias event_skin_h_on h_on
|
|
def h_on
|
|
event_skin_h_on
|
|
@skin_change_flag = true
|
|
@skin_change = true
|
|
end
|
|
#--------------------------------------------------------------------------
|
|
# ○ エッチイベントOFF
|
|
#--------------------------------------------------------------------------
|
|
alias event_skin_h_off h_off
|
|
def h_off
|
|
event_skin_h_off
|
|
@skin_change_flag = false if !$game_switches[FAKEREAL::EVENT_RUNNING]
|
|
@skin_change = true if !$game_switches[FAKEREAL::EVENT_RUNNING]
|
|
end
|
|
end
|
|
|
|
#==============================================================================
|
|
# ■ Scene_Map
|
|
#------------------------------------------------------------------------------
|
|
# マップ画面の処理を行うクラスです。
|
|
#==============================================================================
|
|
|
|
class Scene_Map < Scene_Base
|
|
#--------------------------------------------------------------------------
|
|
# ● フレーム更新
|
|
#--------------------------------------------------------------------------
|
|
alias event_skin_update update
|
|
def update
|
|
event_skin_update
|
|
window_skin_change if $game_system.skin_change && !$game_message.visible
|
|
end
|
|
#--------------------------------------------------------------------------
|
|
# ○
|
|
#--------------------------------------------------------------------------
|
|
def window_skin_change
|
|
@message_window.skin_change($game_system.skin_change_flag)
|
|
$game_system.skin_change = false
|
|
end
|
|
end
|
|
|
|
#==============================================================================
|
|
# ■ Game_Interpreter
|
|
#------------------------------------------------------------------------------
|
|
# イベントコマンドを実行するインタプリタです。このクラスは Game_Map クラス、
|
|
# Game_Troop クラス、Game_Event クラスの内部で使用されます。
|
|
#==============================================================================
|
|
|
|
class Game_Interpreter
|
|
#--------------------------------------------------------------------------
|
|
# ○ EV開始
|
|
#--------------------------------------------------------------------------
|
|
def event_on
|
|
$game_system.skin_change_flag = true
|
|
$game_system.skin_change = true
|
|
end
|
|
#--------------------------------------------------------------------------
|
|
# ○ EV終了
|
|
#--------------------------------------------------------------------------
|
|
def event_off
|
|
$game_system.skin_change_flag = false
|
|
$game_system.skin_change = true
|
|
end
|
|
end |