Files
DailyDungeon/Scripts/ranged_attack.gd
2025-06-26 17:04:35 -05:00

27 lines
760 B
GDScript

extends PlayerState
class_name PlayerRangedAttack
@export var fired_object : PackedScene
@export var object_speed : float = 20.0
@export var arrow_damage : float = 1
func Enter():
character.velocity = Vector3.ZERO
func Physics_Update(delta):
body_look_at_mouse()
apply_gravity(delta)
if Input.is_action_just_released("ranged_attack"):
fire_projectile()
Transitioned.emit(self,"on floor")
func fire_projectile():
var arrow_spawn = fired_object.instantiate()
get_tree().current_scene.add_child(arrow_spawn)
character.arrows -= 1
arrow_spawn.speed = object_speed
arrow_spawn.transform.basis = character.body.global_transform.basis
arrow_spawn.global_position = character.body.global_position
print("ARROW POS :", arrow_spawn.global_position)