SeptemberGameAB/scripts/grenade.gd

28 lines
632 B
GDScript

class_name Grenade
extends RigidBody2D
var timer = Timer.new()
@onready var animated_sprite_2d: AnimatedSprite2D = $AnimatedSprite2D
@onready var sprite_2d: Sprite2D = $Sprite2D
func _ready() -> void:
add_child(timer)
timer.wait_time = 2.0
timer.one_shot = true
timer.connect("timeout", explode)
timer.start()
func explode() -> void:
print("kaboom!")
sprite_2d.visible = false
animated_sprite_2d.play("explode")
await animated_sprite_2d.animation_finished
self.queue_free()
func _on_body_entered(body: Node) -> void:
print("grenade hit something")
if body.is_in_group("explodable"):
body.queue_free()
explode()