lunariafantasia/Scripts/_.73.rb
2024-01-12 03:12:38 -06:00

71 lines
2.9 KiB
Ruby

#==============================================================================
# ■ Game_Screen
#------------------------------------------------------------------------------
#  色調変更やフラッシュなど、画面全体に関係する処理のデータを保持するクラスで
# す。このクラスは Game_Map クラス、Game_Troop クラスの内部で使用されます。
#==============================================================================
class Game_Screen
#--------------------------------------------------------------------------
# ● 公開インスタンス変数
#--------------------------------------------------------------------------
attr_accessor :endless_shake #
#--------------------------------------------------------------------------
# ● クリア
#--------------------------------------------------------------------------
alias endless_clear clear
def clear
endless_clear
@endless_shake = false
end
#--------------------------------------------------------------------------
# ● シェイクの開始
# power : 強さ
# speed : 速さ
#--------------------------------------------------------------------------
alias endless_start_shake start_shake
def start_shake(power, speed, duration)
endless_start_shake(power, speed, duration)
@endless_shake = false
end
#--------------------------------------------------------------------------
# ● シェイクの開始
# power : 強さ
# speed : 速さ
#--------------------------------------------------------------------------
def start_shake_endless(power, speed)
@shake_power = power
@shake_speed = speed
@endless_shake = true
end
#--------------------------------------------------------------------------
# ● シェイクの更新
#--------------------------------------------------------------------------
alias endless_update_shake update_shake
def update_shake
if @endless_shake
delta = (@shake_power * @shake_speed * @shake_direction) / 10.0
@shake += delta
@shake_direction = -1 if @shake > @shake_power * 2
@shake_direction = 1 if @shake < - @shake_power * 2
else
endless_update_shake
end
end
end
#==============================================================================
# ■ Game_Interpreter
#------------------------------------------------------------------------------
#  イベントコマンドを実行するインタプリタです。このクラスは Game_Map クラス、
# Game_Troop クラス、Game_Event クラスの内部で使用されます。
#==============================================================================
class Game_Interpreter
#--------------------------------------------------------------------------
# ●
#--------------------------------------------------------------------------
def endless_shake(power, speed)
screen.start_shake_endless(power, speed)
end
end