Beispiel #1
0
 private void OnComponentUpdated(BarracksInfo.Update update)
 {
     if (update.barracksState.HasValue)
     {
         transition.Play();
         SwitchToBarracksState(update.barracksState.Value);
     }
 }
        public void TriggerTransition(BarracksState newState)
        {
            if (barracksInfo == null)
            {
                Debug.LogError("Trying to change state without authority.");
                return;
            }

            if (IsValidTransition(newState))
            {
                Data.barracksState = newState;

                var update = new BarracksInfo.Update();
                update.SetBarracksState(Data.barracksState);
                barracksInfo.Send(update);

                TransitionTo(newState);
            }
            else
            {
                Debug.LogErrorFormat("Barracks: Invalid transition from {0} to {1} detected.", Data.barracksState, newState);
            }
        }