#============================================================================== # タイマーの一時停止と再開 #  # 作動中のタイマーの一時停止と再開を実装します。 # # 起動方法 #  以下の3種類をご用意しましたので、目的に合わせて、 #  スクリプトに記述してください。 #   一時停止 #    timer_pause #   再開 #    timer_resume #   自動切換え #    timer_auto_switch # # 利用規約 #  連絡不要 #  商用可 # 改造可 # 再配布可(無改造の場合はクレジットを消さないでください) # アダルト可 #  利用された際、クレジットはあると喜びます  # GYM # http://gymaterials.jp/ # #============================================================================== # ■ Game_Timer #------------------------------------------------------------------------------ #  タイマーを扱うクラスです。このクラスのインスタンスは $game_timer で参照さ # れます。 #============================================================================== class Game_Timer #-------------------------------------------------------------------------- # ● オブジェクト初期化 #-------------------------------------------------------------------------- alias timer_pause_initialize initialize def initialize timer_pause_initialize @pause = false end #-------------------------------------------------------------------------- # ● フレーム更新 #-------------------------------------------------------------------------- def update if @working && @count > 0 @count -= 1 unless @pause on_expire if @count == 0 end end #-------------------------------------------------------------------------- # ● 一時停止 #-------------------------------------------------------------------------- def pause @pause = true end #-------------------------------------------------------------------------- # ● 一時停止中かどうかの判定 #-------------------------------------------------------------------------- def pause? @pause end #-------------------------------------------------------------------------- # ● 再開 #-------------------------------------------------------------------------- def resume @pause = false end end #============================================================================== # ■ Game_Interpreter #------------------------------------------------------------------------------ #  イベントコマンドを実行するインタプリタです。このクラスは Game_Map クラス、 # Game_Troop クラス、Game_Event クラスの内部で使用されます。 #============================================================================== class Game_Interpreter #-------------------------------------------------------------------------- # ● タイマーの一時停止 #-------------------------------------------------------------------------- def timer_pause $game_timer.pause if $game_timer.working? end #-------------------------------------------------------------------------- # ● タイマーの再開 #-------------------------------------------------------------------------- def timer_resume $game_timer.resume if $game_timer.working? end #-------------------------------------------------------------------------- # ● タイマーの一時停止と再開の自動切換え #  多用するとややこしい事になるかも。 #-------------------------------------------------------------------------- def timer_auto_switch if $game_timer.pause? timer_resume else timer_pause end end end