#============================================================================== # ++ 変数利用イベントコマンド拡張(仮) ver. 1.00β ++ #  Script by パラ犬 #  http://para.j-mx.com/ #------------------------------------------------------------------------------ # イベントコマンド「スクリプト」で使用するメソッド集です。 #------------------------------------------------------------------------------ # [メソッド一覧] # # ■アイテム増減 # ・get_item(アイテムID, 個数):アイテムの増加 # ・get_weapon(武器ID, 個数) :武器の増加 # ・get_armor(防具ID, 個数):防具の増加 # #  "v[n]"を使うことで、増減するアイテムを変数で指定できます。 #  減少させるときは個数にマイナスの値を入れます。 # # # ■アクターの名前にアイテム名 # ・set_actor_name_item(アイテムID, アクターID):アイテム名 # ・set_actor_name_weapon(武器ID, アクターID):武器名 # ・set_actor_name_armor(防具ID, アクターID):防具名 # #  指定したIDのアクターの名前にアイテム名を代入します。 #  主に制御文字\N[n]を利用してアイテム名を表示するのに使います。 # #------------------------------------------------------------------------------ # [変数の使い方] # IDや個数を指定する部分に「"v[(変数の番号)]"」と記述することで # その変数の値を指定できます。(例:"v[1]") # (※「"」のつけ忘れに注意) #------------------------------------------------------------------------------ # [使用例] # ・変数0003番の番号のアイテムを1個増やして #  5番のアクターを利用して「(アイテム名)を手に入れた。」と表示。 # #   ◆スクリプト:get_item("v[3]", 1) #         :set_actor_name_item("v[3]", 5) #   ◆文章:\N[5]を手に入れた。 #============================================================================== class Interpreter #-------------------------------------------------------------------------- # ○ 変数かどうかを判定して値を取得(書式:"v[n]"または"V[n]") #-------------------------------------------------------------------------- def get_val(v) if v.is_a?(String) v.gsub!(/[Vv]\[([0-9]+)\]/) { $game_variables[$1.to_i] } v = v.to_i end return v end #-------------------------------------------------------------------------- # ○ アイテムを入手 #-------------------------------------------------------------------------- def get_item(id, n) id = get_val(id) n = get_val(n) $game_party.gain_item(id, n) end #-------------------------------------------------------------------------- # ○ 武器を入手 #-------------------------------------------------------------------------- def get_weapon(id, n) id = get_val(id) n = get_val(n) $game_party.gain_weapon(id, n) end #-------------------------------------------------------------------------- # ○ 防具を入手 #-------------------------------------------------------------------------- def get_armor(id, n) id = get_val(id) n = get_val(n) $game_party.gain_armor(id, n) end #-------------------------------------------------------------------------- # ○ アクターの名前変更 #-------------------------------------------------------------------------- def set_actor_name(name, actor_id) # アクターを取得 actor = $game_actors[actor_id] # 名前を変更 if actor != nil actor.name = name end # 継続 return true end #-------------------------------------------------------------------------- # ○ アイテム名をアクターにセット #-------------------------------------------------------------------------- def set_actor_name_item(id, actor_id) id = get_val(id) actor_id = get_val(actor_id) name = $data_items[id].name set_actor_name(name, actor_id) end #-------------------------------------------------------------------------- # ○ 武器名をアクターにセット #-------------------------------------------------------------------------- def set_actor_name_weapon(id, actor_id) id = get_val(id) actor_id = get_val(actor_id) name = $data_weapons[id].name set_actor_name(name, actor_id) end #-------------------------------------------------------------------------- # ○ 防具名をアクターにセット #-------------------------------------------------------------------------- def set_actor_name_armor(id, actor_id) id = get_val(id) actor_id = get_val(actor_id) name = $data_armors[id].name set_actor_name(name, actor_id) end end