#=========================================================================== # ◆ A1 Scripts ◆ # イベントコマンド拡張(RGSS3) # # バージョン : 1.00 (2012/01/09) # 作者 : A1 # URL     : http://a1tktk.web.fc2.com/ #--------------------------------------------------------------------------- # 機能: # ・各種イベントコマンドの内容を置き換えます # ループや注釈スクリプト起動などを合わせると意外な効果が #--------------------------------------------------------------------------- # 更新履歴   :2012/01/09 Ver1.00 リリース #--------------------------------------------------------------------------- # 設置場所 # A1共通スクリプト以下 # # 必要スクリプト # A1共通スクリプトVer3.30以上 #--------------------------------------------------------------------------- # 使い方 # 注釈で使用する素材を指定します # # 文章顔 [RTP名]_[ファイル名],[Index] # 次に実行する文章で、指定した顔グラフィックを使用します # # Audio [RTP名]_[ファイル名],[Index] # 次に実行するBGM/NGS/ME/SE演奏で、指定したオーディオファイルを使用します # # 戦闘背景 [RTP名]_[ファイル名],[RTP名]_[ファイル名] # 戦闘背景を設定します # # アクターグラフィック [RTP名]_[ファイル名],[Index],[RTP名]_[ファイル名],[Index] # 次に実行する「アクターグラフィック変更」で # 指定した歩行グラフィック・顔グラフィックを使用します # # 遠景変更 [RTP名]_[ファイル名],[(fix)] # # 次に実行する「遠景の変更」で、指定した遠景グラフィックを使用します # ファイル名の後に fix と入れると画面サイズに合わせます #============================================================================== $imported ||= {} $imported["A1_ExEventCommand"] = true if $imported["A1_Common_Script"] old_common_script("各種イベントコマンド置き換え", "3.30") if common_version < 3.30 #============================================================================== # ■ A1_System::CommonModule #============================================================================== class A1_System::CommonModule #-------------------------------------------------------------------------- # ☆ 注釈コマンド定義 #-------------------------------------------------------------------------- alias a1_ex_event_command_define_command define_command def define_command a1_ex_event_command_define_command @cmd_108["文章顔"] = :massage_face @cmd_108["戦闘背景"] = :battle_back @cmd_108["戦闘アニメ"] = :battle_animation @cmd_108["Audio"] = :audio @cmd_108["アクターグラフィック"] = :actor_graphic @cmd_108["遠景変更"] = :parallax_change end end #============================================================================== # ■ Game_Interpreter #------------------------------------------------------------------------------ #  イベントコマンドを実行するインタプリタです。このクラスは Game_Map クラス、 # Game_Troop クラス、Game_Event クラスの内部で使用されます。 #============================================================================== class Game_Interpreter #-------------------------------------------------------------------------- # ○ 文章顔 #-------------------------------------------------------------------------- def massage_face(params) return if next_event_code != 101 @list[@index + 1].parameters[0] = params[0] unless params[0].empty? @list[@index + 1].parameters[1] = params[1].to_i end #-------------------------------------------------------------------------- # ○ 戦闘背景 #-------------------------------------------------------------------------- def battle_back(params) params[0] ||= "" params[1] ||= "" $game_map.change_battleback(params[0], params[1]) end #-------------------------------------------------------------------------- # ○ 戦闘アニメ #-------------------------------------------------------------------------- def battle_animation(params) character = get_character(params[0].to_i) return unless character character.animation_id = params[1].to_i Fiber.yield while character.animation_id > 0 if params[2].to_i == 1 end #-------------------------------------------------------------------------- # ○ Audio #-------------------------------------------------------------------------- def audio(params) next_param = @list[@index + 1].parameters case next_event_code when 241, 245, 249, 250; next_param[0].name = params[0] end end #-------------------------------------------------------------------------- # ○ アクターグラフィック #-------------------------------------------------------------------------- def actor_graphic(params) return if next_event_code != 322 @list[@index + 1].parameters[1] = params[0] @list[@index + 1].parameters[2] = params[1].to_i @list[@index + 1].parameters[3] = params[2] @list[@index + 1].parameters[4] = params[3].to_i end #-------------------------------------------------------------------------- # ○ 遠景変更 #-------------------------------------------------------------------------- def parallax_change(params) return if next_event_code != 284 @list[@index + 1].parameters[0] = params[0] $game_temp.parallax_fix = true if params[1] == "fix" end end end