extends Node3D class_name Projectile ## Linear speed of the projectile @export var speed := 10.0 ## Direction the projectile will travel in @export var direction: Vector3: set(v): model.last_movement_vector = v get: return model.last_movement_vector ## Maximum distance from the origin point that the projectile will travel @export var max_range := 30.0 ## Weapon which emitted the projectile var weapon: Weapon ## Collision layer for projectile var collision_layer: int: set(c): model.collision_layer = c get: return model.collision_layer ## Collision mask for projectile var collision_mask: int: set(c): model.collision_mask = c get: return model.collision_mask @onready var model: ProjectileModel = $Model func _process(delta: float) -> void: model.update(delta)