Files
Decked-Out-Defense/PCs/FSM/building_state.gd

31 lines
804 B
GDScript

class_name BuildingState
extends HeroState
@export var swap_state: HeroState
func enter_state() -> void:
hero.edit_tool.enabled = true
hero.game_manager.level.enable_non_path_tower_frames()
func exit_state() -> void:
hero.edit_tool.interact_key_held = false
hero.edit_tool.enabled = false
hero.game_manager.level.disable_all_tower_frames()
func process_state(_delta: float) -> void:
hero.check_world_button()
if Input.is_action_just_pressed("Primary Fire"):
hero.edit_tool.interact_key_held = true
if Input.is_action_just_released("Primary Fire"):
hero.edit_tool.interact_key_held = false
if Input.is_action_just_pressed("Swap Weapons"):
state_changed.emit(swap_state)
if Input.is_action_pressed("Ready"):
if hero.ready_state:
hero.unready_self()
else:
hero.ready_self()