# # アクターの総替え #  (C)2006 TYPE74RX-T # class Interpreter #-------------------------------------------------------------------------- # ★ 注釈 #-------------------------------------------------------------------------- alias rx_total_substitution_command_108 command_108 def command_108 # アクターの総替え if @parameters[0].include?("アクターの総替え") # 初期設定 rx_str = @parameters[0] rx_actors = {} # 複数行にわたって設定している場合 # それらを全て変数に代入する i = 1 loop do # 次の行に文字列がある場合 if @list[@index+i].code == 408 rx_str += @list[@index+i].parameters[0] i += 1 else break end end # 文字列から名前と数字とに分ける rx_nam = rx_str.split(/[\s\-]+/) # 名前のみ抜き出す # ハッシュを生成。 そして同時に全てのアクターをパーティーから外す for i in 1...$data_actors.size rx_actors[$data_actors[i].name] = $data_actors[i].id $game_party.remove_actor(i) end # 指定されたアクターを全て加える for i in 1...rx_nam.size $game_party.add_actor(rx_actors[rx_nam[i]]) end # 継続(競合対策) return true end rx_total_substitution_command_108 end end