revo-jailbreak/objects/environment/bubble/bubble.gd
2023-06-30 05:59:36 -04:00

32 lines
713 B
GDScript

extends Area2D
export var speed = 16.0
onready var sprite = $Sprite
onready var activation_timer = $ActivationTimer
var lifetime = 0.0
func _ready():
sprite.frame_coords.x = randi() % sprite.hframes
func _physics_process(delta):
lifetime += delta
if speed > 0.0:
sprite.position.x = sin(lifetime * 4.0) * 4.0
position.y -= speed * delta
func pop():
sprite.frame_coords.y = 1
$CollisionShape2D.queue_free()
speed = 0.0
get_tree().create_timer(0.5, false).connect("timeout", self, "queue_free")
func _on_Bubble_body_entered(body):
if body.is_in_group("player"):
body.oxygen_timer.start()
Audio.play_sound(Audio.a_bubble,Audio.ac_die)
pop()
elif activation_timer.time_left == 0:
pop()