#--------------------------------------------------------------------- # ★ 追加コマンドセット ver0.27 # 作成者:Jun.A #--------------------------------------------------------------------- =begin  $add_commandset.check_region_id(locate) :プレイヤー周囲(0,2,4,6,8)のリージョン                       IDを返す。  $add_commandset.direction_region_id :進行方向一歩前のリージョンIDを返す。  $add_commandset.assign_region_id(x,y) :指定座標(x,y)のリージョンIDを返す。  $game_player.move_through :呼び出すとすり抜けオンならオフ・オフならオンにする。  $in_battle_flagは、スクリプトで戦闘中かすぐにわかるよう新たに作ったフラグです。  絶対に変更を行わないでください。 =end =begin  ★お役立ちコマンド   BattleManager::actor :BattleManager::actor::mpで現在のMPを表示したり。   ・戦闘中、$game_party.members[i]でパーティのアクターを取得する事が出来る。    actor = $game_party.members[1]とすれば、パーティ2番目のアクターを取得。    下記を実行すると、数字の順でパーティのアクターを表示していく。     $game_party.members.each_with_index do |actor, i|   p i   p actor.mp   end =end $in_battle_flag = false #戦闘中かチェックする独自フラグ(!変更不可) #--------------------------------------------------------------------- # ■ 戦闘中フラグを追加 #--------------------------------------------------------------------- class Scene_Battle #-------------------------------------------------------------------------- # 開始後処理 / 戦闘中フラグをtrue #-------------------------------------------------------------------------- alias old_post_start post_start def post_start old_post_start $in_battle_flag = true end #-------------------------------------------------------------------------- # 終了処理 / 戦闘中フラグをtrue #-------------------------------------------------------------------------- alias old_terminate terminate def terminate old_terminate $in_battle_flag = false end end # 戦闘中フラグ追加 ここまで #--------------------------------------------------------------------- # ■ データマネージャ拡張 #--------------------------------------------------------------------- module DataManager def self.create_game_objects $game_temp = Game_Temp.new $game_system = Game_System.new $game_timer = Game_Timer.new $game_message = Game_Message.new $game_switches = Game_Switches.new $game_variables = Game_Variables.new $game_self_switches = Game_SelfSwitches.new $game_actors = Game_Actors.new $game_party = Game_Party.new $game_troop = Game_Troop.new $game_map = Game_Map.new $game_player = Game_Player.new # ここから追加 $add_commandset = Add_Commandset.new end end #--------------------------------------------------------------------- # ■ 追加コマンドセットクラス($add_commandsetで呼び出し可能) #--------------------------------------------------------------------- class Add_Commandset #--------------------------------------------------------------------- # □ プレイヤーの周囲を指定してリージョンIDを返します。(デフォルト値:0) #--------------------------------------------------------------------- def check_region_id(locate = 0) case locate when 0 #player's locate return $game_map.region_id($game_player.real_x, $game_player.real_y) when 2 #down return $game_map.region_id($game_player.real_x, $game_player.real_y+1) when 4 #left return $game_map.region_id($game_player.real_x-1, $game_player.real_y) when 6 #right return $game_map.region_id($game_player.real_x+1, $game_player.real_y) when 8 #up return $game_map.region_id($game_player.real_x, $game_player.real_y-1) end end #--------------------------------------------------------------------- # □ プレイヤーの向きを取得して、1歩前のリージョンIDを返します。 #--------------------------------------------------------------------- def direction_region_id locate = $game_player.direction case locate when 2 #down return $game_map.region_id($game_player.real_x, $game_player.real_y+1) when 4 #left return $game_map.region_id($game_player.real_x-1, $game_player.real_y) when 6 #right return $game_map.region_id($game_player.real_x+1, $game_player.real_y) when 8 #up return $game_map.region_id($game_player.real_x, $game_player.real_y-1) end end #--------------------------------------------------------------------- # □ プレイヤーの向きを取得して、2歩前のリージョンIDを返します。 #--------------------------------------------------------------------- def direction_region_id_two_grid locate = $game_player.direction case locate when 2 #down return $game_map.region_id($game_player.real_x, $game_player.real_y+2) when 4 #left return $game_map.region_id($game_player.real_x-2, $game_player.real_y) when 6 #right return $game_map.region_id($game_player.real_x+2, $game_player.real_y) when 8 #up return $game_map.region_id($game_player.real_x, $game_player.real_y-2) end end #--------------------------------------------------------------------- # □ 指定の座標を取得して、その座標のリージョンIDを返します。 #--------------------------------------------------------------------- def assign_region_id(x, y) return $game_map.region_id(x, y) end end #--------------------------------------------------------------------- # ■ RPG::Class 追加メソッド #--------------------------------------------------------------------- class RPG::Class < RPG::BaseItem #--------------------------------------------------------------------- # ○ メモ欄から「」を探して返します。 # 1行の場合・2行の場合に対応。3行にまたがる際は何も返しません。 # 例) $data_classes[1].helt_text … クラスID1番から探して返します。 #--------------------------------------------------------------------- def help_text if // =~ self.note // =~ self.note ? $1 : "--" elsif // =~ self.note // =~ self.note ? $1 : "--" else end end end #--------------------------------------------------------------------- # ■ Game_Playerクラス 拡張 #--------------------------------------------------------------------- class Game_Player #--------------------------------------------------------------------- # □ 呼び出すと、すり抜けオンならオフに、すり抜けオフならオンにします。 #--------------------------------------------------------------------- def move_through if @through == true @through = false else @through = true end end end