Files
2026-09-01 22:41:37 +02:00

24 lines
566 B
GDScript

extends Node3D
class_name Bullet
const MAX_LIFETIME = 3.
var damage : float = 10.
var speed : float = 150.
var lifetime : float = 0.
@onready var raycast : RayCast3D = %RayCast3D
func _process(delta):
lifetime += delta
position += transform.basis * Vector3(0,0,-speed) * delta
if raycast.is_colliding():
if raycast.get_collider() is Alien:
raycast.get_collider().hit(damage)
queue_free()
if raycast.get_collider() is StaticBody3D:
queue_free()
if lifetime > MAX_LIFETIME:
queue_free()