Files
MaidEngine/nodes/strategy_phase.gd
2026-04-02 16:53:21 -04:00

24 lines
891 B
GDScript

class_name StrategyPhase extends Node2D
@onready var player_controller: PlayerController = $PlayerController
@onready var combat_system: CombatSystem = $CombatSystem
@onready var combat_ui: CombatUI = $CombatUI
@onready var combat_map: CombatMap = $CombatMap
func _ready() -> void:
player_controller.combat_requested.connect(_on_combat_requested)
combat_ui.fight_confirmed.connect(_on_fight_confirmed)
combat_ui.fight_cancelled.connect(_on_fight_cancelled)
func _on_combat_requested(attacker: Unit, defender: Unit) -> void:
var proposal := combat_system.create_proposal(attacker, defender)
combat_map.set_highlight_enabled(false)
combat_ui.show_proposal(proposal)
func _on_fight_confirmed(proposal: CombatProposal) -> void:
combat_system.apply_proposal(proposal)
combat_map.set_highlight_enabled(true)
func _on_fight_cancelled() -> void:
combat_map.set_highlight_enabled(true)