Objetivo
Definir un bus de eventos central (EventBus) con todas las señales del juego para desacoplar los sistemas entre sí.
Alcance
- Autoload
EventBus.gd como única fuente de verdad de señales
- Señales de unidades:
unit_moved, unit_attacked, unit_died, unit_promoted
- Señales de ciudad:
city_built, city_captured, production_complete
- Señales de turno:
turn_started, turn_phase_changed, turn_ended
- Señales Web3:
wallet_connected, proof_generated, tx_confirmed, web3_error
- Señales de UI:
hex_hovered, unit_selected, city_selected, panel_opened
Skill de referencia
/godot-signal-architecture
Tareas
Aceptación
Todos los sistemas se comunican exclusivamente a través de EventBus; no hay llamadas directas entre escenas no relacionadas y el bus imprime en _DEBUG cada señal emitida si OS.is_debug_build().
Objetivo
Definir un bus de eventos central (EventBus) con todas las señales del juego para desacoplar los sistemas entre sí.
Alcance
EventBus.gdcomo única fuente de verdad de señalesunit_moved,unit_attacked,unit_died,unit_promotedcity_built,city_captured,production_completeturn_started,turn_phase_changed,turn_endedwallet_connected,proof_generated,tx_confirmed,web3_errorhex_hovered,unit_selected,city_selected,panel_openedSkill de referencia
/godot-signal-architectureTareas
autoloads/EventBus.gdcon todos lossignaldeclarados y tipadosEventBusa la lista de autoloads enproject.godotscripts/EventBusTypes.gdcon enums compartidos (Phase,TerrainType,UnitType)Aceptación
Todos los sistemas se comunican exclusivamente a través de EventBus; no hay llamadas directas entre escenas no relacionadas y el bus imprime en
_DEBUGcada señal emitida siOS.is_debug_build().