# # タイルセットの変更 #  (C)2006 TYPE74RX-T # #============================================================================== # ■ Game_Map #------------------------------------------------------------------------------ #  マップを扱うクラスです。スクロールや通行可能判定などの機能を持っています。 # このクラスのインスタンスは $game_map で参照されます。 #============================================================================== class Game_Map #-------------------------------------------------------------------------- # ★ タイルセットのリセットアップ # tile_id : タイル ID #-------------------------------------------------------------------------- def rx_tileset_resetup(tile_id) # 公開インスタンス変数にタイルセットの情報を設定 tileset = $data_tilesets[tile_id] @tileset_name = tileset.tileset_name @autotile_names = tileset.autotile_names @panorama_name = tileset.panorama_name @panorama_hue = tileset.panorama_hue @fog_name = tileset.fog_name @fog_hue = tileset.fog_hue @fog_opacity = tileset.fog_opacity @fog_blend_type = tileset.fog_blend_type @fog_zoom = tileset.fog_zoom @fog_sx = tileset.fog_sx @fog_sy = tileset.fog_sy @battleback_name = tileset.battleback_name @passages = tileset.passages @priorities = tileset.priorities @terrain_tags = tileset.terrain_tags # フォグの各情報を初期化 @fog_ox = 0 @fog_oy = 0 @fog_tone = Tone.new(0, 0, 0, 0) @fog_tone_target = Tone.new(0, 0, 0, 0) @fog_tone_duration = 0 @fog_opacity_duration = 0 @fog_opacity_target = 0 end end #============================================================================== # ■ Scene_Map #------------------------------------------------------------------------------ #  マップ画面の処理を行うクラスです。 #============================================================================== class Scene_Map #-------------------------------------------------------------------------- # ★ スプライトセットのリセット処理 #-------------------------------------------------------------------------- def rx_sprite_reset # スプライトセットを解放 @spriteset.dispose # スプライトセットを作成 @spriteset = Spriteset_Map.new end end #============================================================================== # ■ Interpreter #------------------------------------------------------------------------------ #  イベントコマンドを実行するインタプリタです。このクラスは Game_System クラ # スや Game_Event クラスの内部で使用されます。 #============================================================================== class Interpreter #-------------------------------------------------------------------------- # ★ 注釈 #-------------------------------------------------------------------------- alias rx_rgssc11_command_108 command_108 def command_108 # 出現トループの追加処理 if @parameters[0].include?("タイルセットの変更") # 初期設定 rx_str = @parameters[0] # 文字列から数字の文字列のみを抽出 rx_r_spec = rx_str.scan(/\d+/) # 現在のマップのタイルセットをリセットアップ $game_map.rx_tileset_resetup(rx_r_spec[0].to_i) # スプライトセットをリセット $scene.rx_sprite_reset # 継続(競合対策) return true end # メソッドを呼び戻す rx_rgssc11_command_108 end end