#◆◇◆◇◆ アニメ中戦闘背景変更スクリプト ver 1.00 ◇◆◇◆◇ # 全マスタースクリプト共通スクリプト # サポート掲示板 http://www2.ezbbs.net/21/minto-aaa/ # by みんと =begin 説明 アニメ表示中に戦闘背景が変更できるようになります。 制御はフラッシュのSEで行います。 実行は制御SEが実行されたタイミングで動作します。 ヒットやミスなどの条件も通常通り適用されます。 隠し装備スクリプトと併用すると相乗効果がアップするかもしれません。 ■ 使用できる制御SE トランジョン準備 トランジョンを準備モードにし、画面の更新を禁止します。 イベントコマンドのものと同じものです。 トランジョン実行 トランジョンを実行します。 トランジョンを実行するには 事前にトランジョンの準備を実行している必要があります。 トランジョンの処理時間はフラッシュの時間をそのまま使用します。 背景変更 戦闘背景を変更します。 変更する背景はフラッシュの強さで分岐します。 設定はソース内部で行ってください。 背景を戻す 変更した背景を解除し、 もともとの戦闘背景に戻します。 これを実行しない場合は背景はそのままとなります。 =end #============================================================================== # ☆ MINTO #------------------------------------------------------------------------------ # 様々なフラグを扱うメインモジュールです。 #============================================================================== module MINTO # アニメ中戦闘背景変更スクリプトを有効化 ( true で有効 / false で無効 ) RGSS["MINTO_Battleback_Change"] = true end # アニメ中戦闘背景変更スクリプトが有効な場合に以降の処理を実行する if MINTO::RGSS["MINTO_Battleback_Change"] == true then #============================================================================== # ☆ カスタマイズ #------------------------------------------------------------------------------ # 機能のカスタマイズをここで行います。 #============================================================================== module MINTO #------------------------------------------------------------------------- # ☆ 変更する戦闘背景の設定 # battleback_id : 戦闘背景ID(フラッシュの強さ) #------------------------------------------------------------------------- def self.new_battleback(battleback_id) # まだ戦闘背景名が保存されていない場合 if $game_temp.save_battleback_name == nil then # 元の戦闘背景名を保存 $game_temp.save_battleback_name = $game_temp.battleback_name.dup end # 戦闘背景ID(フラッシュの強さ)に応じて分岐 case battleback_id # ID 254 when 254 then # 新しい戦闘背景名を返す return "001-Grassland01" # ID 253 when 253 then # 新しい戦闘背景名を返す return "002-Woods01" end end end #============================================================================== # ☆ MINTO_Sprite_Battler #------------------------------------------------------------------------------ # Sprite_Baseクラスの強化システムモジュールです。 #============================================================================== module MINTO_Sprite_Battler #-------------------------------------------------------------------------- # ● SEとフラッシュのタイミング処理 # timing : タイミングデータ (RPG::Animation::Timing) # hit : ヒットフラグ #-------------------------------------------------------------------------- def animation_process_timing(timing, hit) # 条件が ヒット で攻撃がミスだった場合か、 # 条件が ミス で攻撃がヒットだった場合 if(timing.condition == 1 and hit == false) or (timing.condition == 2 and hit == true) then # メソッドを返す return end # SE名に応じて分岐 case timing.se.name when "トランジョン準備" then # トランジョン準備 Graphics.freeze when "トランジョン実行" then # トランジョン実行 Graphics.transition(timing.flash_duration) when "背景変更" then # 戦闘背景ID(フラッシュの強さ)を取得する battleback_id = timing.flash_color.alpha # 戦闘背景を変更する $game_temp.battleback_name = MINTO.new_battleback(battleback_id) when "背景を戻す" then # 戦闘背景名が保存されている場合 if $game_temp.save_battleback_name != nil then # 戦闘背景を戻す $game_temp.battleback_name = $game_temp.save_battleback_name.dup end # それ以外のSE名の場合 else # スーパークラスを実行 (継承先の処理に移行する) super(timing, hit) end end end #============================================================================== # ■ Game_Temp #------------------------------------------------------------------------------ #  セーブデータに含まれない、一時的なデータを扱うクラスです。このクラスのイン # スタンスは $game_temp で参照されます。 #============================================================================== class Game_Temp #-------------------------------------------------------------------------- # ● 公開インスタンス変数 #-------------------------------------------------------------------------- attr_accessor :save_battleback_name # 保存用の戦闘背景名 end #============================================================================== # ■ Sprite_Battler #------------------------------------------------------------------------------ #  バトラー表示用のスプライトです。Game_Battler クラスのインスタンスを監視し、 # スプライトの状態を自動的に変化させます。 #============================================================================== class Sprite_Battler < RPG::Sprite #-------------------------------------------------------------------------- # ● システムインクルード宣言 #-------------------------------------------------------------------------- include MINTO_Sprite_Battler # みんとスプライトベース end #============================================================================== # ■ Scene_Battle (分割定義 1) #------------------------------------------------------------------------------ #  バトル画面の処理を行うクラスです。 #============================================================================== class Scene_Battle #-------------------------------------------------------------------------- # ● メイン処理 # 使用エイリアス : main_MINTO_Battleback_Change #-------------------------------------------------------------------------- alias :main_MINTO_Battleback_Change :main def main # 元の処理を実行 main_MINTO_Battleback_Change # 保存用の戦闘背景名をクリア $game_temp.save_battleback_name = nil end end end