26 lines
595 B
GDScript
26 lines
595 B
GDScript
extends WeaponState
|
|
|
|
@export var emptyable: bool
|
|
|
|
func enter() -> void:
|
|
machine.animation_player.play(with_morphems("idle"))
|
|
|
|
func exit() -> void:
|
|
pass
|
|
|
|
func _input(event: InputEvent) -> void:
|
|
if not machine.is_multiplayer_authority(): return
|
|
|
|
if event.is_action_pressed("plr_reload"):
|
|
init_reload()
|
|
|
|
func use_begin() -> void:
|
|
transition.emit("Shoot")
|
|
|
|
func init_reload():
|
|
if machine.ammo == machine.max_ammo:
|
|
return
|
|
transition.emit("Reload")
|
|
|
|
func with_morphems(animation):
|
|
return machine.animation_prefix + ((animation+"_empty") if emptyable and machine.ammo == 0 else animation)
|