# # マップ内テキスト抜きだし(RGSS3) #  (C)2011 TYPE74RX-T # #============================================================================== # ■ Game_Map #------------------------------------------------------------------------------ #  マップを扱うクラスです。スクロールや通行可能判定などの機能を持っています。 # このクラスのインスタンスは $game_map で参照されます。 #============================================================================== class Game_Map #-------------------------------------------------------------------------- # ● 公開インスタンス変数 #-------------------------------------------------------------------------- attr_accessor :rx_txt # ★ テキスト内容 attr_accessor :rx_evtxt_size # ★ テキスト容量 #-------------------------------------------------------------------------- # ★ (デバッグ用)マップ内のイベントに設定しているメッセージをかき集める #-------------------------------------------------------------------------- def rx_events_to_txt(key) (0...@map.events[key].pages.size).each do |i| if @map.events[key].pages[i].list != nil (0...@map.events[key].pages[i].list.size - 1).each do |j| if @map.events[key].pages[i].list[j].parameters != [] and @map.events[key].pages[i].list[j].parameters[0].kind_of?(String) @rx_txt.push(@map.events[key].pages[i].list[j].parameters[0]) @rx_evtxt_size += @map.events[key].pages[i].list[j].parameters[0].size end end end end end #-------------------------------------------------------------------------- # ★ (デバッグ用)かき集めたメッセージをセーブ # ファイル名:マップID + マップ名.txt #-------------------------------------------------------------------------- def rx_txt_save file_name = "map" + @map_id.to_s + "_" + $data_mapinfos[@map_id].name + ".txt" foo = File.open(file_name,'w') foo.puts @rx_txt foo.close end #-------------------------------------------------------------------------- # ● イベントのセットアップ #-------------------------------------------------------------------------- alias rx3_11121502_setup_events setup_events def setup_events @rx_txt = [] # ★ テキスト内容初期化 @rx_evtxt_size = 0 # ★ テキスト容量初期化 @events = {} # ★ 先行定義(以下の処理の後、初期化される) @map.events.each do |i, event| rx_events_to_txt(i) if $TEST end rx3_11121502_setup_events # メソッド呼び戻し end end #============================================================================== # ■ Scene_Map #------------------------------------------------------------------------------ #  マップ画面の処理を行うクラスです。 #============================================================================== class Scene_Map < Scene_Base #-------------------------------------------------------------------------- # ● F9 キーによるデバッグ呼び出し判定 #-------------------------------------------------------------------------- alias rx3_11121502_update_call_debug update_call_debug def update_call_debug rx3_11121502_update_call_debug # メソッド呼び戻し # ★ (デバッグ用)F8 キーでかき集めたメッセージをセーブ $game_map.rx_txt_save if $TEST && Input.press?(:F8) end end