facsimile-wing/scripts/player_revision.gd
2026-04-06 01:30:53 +01:00

33 lines
926 B
GDScript

class_name Player extends Area2D
@onready var input_component: InputComponent = %InputComponent
@onready var movement_component: MovementComponent = %MovementComponent
@onready var shoot_component: ShootComponent = %ShootComponent
@onready var weapon_component: WeaponComponent = %WeaponComponent
@export var can_shoot: bool = true
@export var is_shooting: bool = false
var previous_position: Vector2
var ship_displacement: float
var travel: float = 0
func _process(delta) -> void:
# Read Controls
input_component.update()
# Read Movement Component
movement_component.input = input_component.move_dir
movement_component.tick(delta)
# Set up shooting
if input_component.shooting:
is_shooting = true
if travel > weapon_component.bullet_data.projectile_spacing:
shoot_component.shoot()
travel -= weapon_component.bullet_data.projectile_spacing
else: is_shooting = false