#============================================================================== # □ 斜め移動 (for VX Ace) #------------------------------------------------------------------------------ # Version : 1_20111229 # by サリサ・タイクーン # http://www.tycoon812.com/rgss/ #============================================================================== #============================================================================== # □ 素材スイッチ #============================================================================== $rgsslab = {} if $rgsslab == nil $rgsslab["斜め移動"] = true if $rgsslab["斜め移動"] #============================================================================== # □ カスタマイズポイント #============================================================================== module RGSSLAB end module RGSSLAB::Diagonal_Movement #---------------------------------------------------------------------------- # ○ 斜め移動禁止スイッチ設定 # ここに記述されたスイッチがオンになると # 斜め移動ができなくなります。 # # SWの値を0にすると、この機能を無効化にする事ができます。 #---------------------------------------------------------------------------- SW = 1 end #============================================================================== # □ RGSSLAB::Diagonal_Movement [module] #============================================================================== module RGSSLAB::Diagonal_Movement #-------------------------------------------------------------------------- # ○ 素材設定用の定数定義 #-------------------------------------------------------------------------- MATERIAL_NAME = "斜め移動" VERSION = 1 RELEASE = 20111229 end #============================================================================== # ■ Game_Player [class] #============================================================================== class Game_Player < Game_Character #-------------------------------------------------------------------------- # ○ モジュールの設定 #-------------------------------------------------------------------------- RGSSLAB_026 = RGSSLAB::Diagonal_Movement #-------------------------------------------------------------------------- # ● 方向ボタン入力による移動処理 [再定義] #-------------------------------------------------------------------------- def move_by_input return if !movable? || $game_map.interpreter.running? return if jump_process if $rgsslab["ジャンプ"] if $rgsslab["斜め移動"] unless $game_switches[RGSSLAB_026::SW] case Input.dir8 when 1 ; move_diagonal(4, 2) when 2 ; move_straight(2) when 3 ; move_diagonal(6, 2) when 4 ; move_straight(4) when 6 ; move_straight(6) when 7 ; move_diagonal(4, 8) when 8 ; move_straight(8) when 9 ; move_diagonal(6, 8) end else move_straight(Input.dir4) if Input.dir4 > 0 end else move_straight(Input.dir4) if Input.dir4 > 0 end end end end