Un patrón útil es representar eventos del juego de forma centralizada.
Ejemplos:
JugadorMuerto
MonedasCambiaron
MisionCompletada
JuegoPausado
public static event Action<int>
OnCoinsChanged;
Invocar:
OnCoinsChanged?.Invoke(monedas);
Escuchar:
void OnEnable()
{
Economy.OnCoinsChanged += ActualizarUI;
}
void OnDisable()
{
Economy.OnCoinsChanged -= ActualizarUI;
}
Evita referencias directas innecesarias.
Demasiados eventos globales también hacen difícil seguir el flujo del programa.
Eventos para notificar cambios sin acoplar sistemas directamente.