Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- extends Camera2D
- var time = 0
- var period = 0.3
- var magnitude = 0.2
- func _ready():
- set_process(true)
- # Shake with decreasing intensity while there's time remaining.
- func _process(delta):
- pass
- func shake(duration, frequency, amplitude):
- var campos = get_camera_screen_center()
- while time < period:
- time += get_process_delta_time()
- time = min (time, period)
- #shake
- var offset = Vector2()
- offset.x = rand_range(-magnitude, magnitude)
- offset.y = rand_range(-period, magnitude)
- var newcampos = campos
- newcampos += offset
- set_camera_screen_center(newcampos)
- yield(get_tree(), "idle_frame")
- pass
- set_camera_screen_center(campos)
- pass
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement