22 lines
504 B
GDScript
22 lines
504 B
GDScript
class_name Bullet extends Area2D
|
|
@onready var sprite_2d: Sprite2D = $Sprite2D
|
|
|
|
var speed: float = 500
|
|
signal bulletDamageSignal(target: Node2D, bullet: Node2D)
|
|
|
|
func setSpeed(val: float):
|
|
speed = val
|
|
if val > 0:
|
|
sprite_2d.flip_h = true
|
|
else:
|
|
sprite_2d.flip_h = false
|
|
|
|
func _physics_process(delta: float) -> void:
|
|
position += transform.x * speed * delta
|
|
|
|
func _on_body_entered(body: Node2D) -> void:
|
|
if body is Player:
|
|
return
|
|
if body is Crate && visible:
|
|
bulletDamageSignal.emit(body, self)
|