private void UpdateTheatrics()
        {
            var Theatrics = TheatricsManager.Get();

            Theatrics.m_turn         = Turn;
            Theatrics.m_turnToUpdate = Turn.TurnID;
            Theatrics.SetDirtyBit(uint.MaxValue);

            AbilityPriority phase = Phase == AbilityPriority.NumAbilityPriorities ? AbilityPriority.INVALID : Phase;

            Theatrics.PlayPhase(phase);
        }
        public IEnumerator WaitForTheatrics()
        {
            TheatricsPendingClients.Clear();

            foreach (long clientId in TheatricsManager.Get().m_playerConnectionIdsInUpdatePhase)
            {
                TheatricsPendingClients.Add(clientId);
            }
            Log.Info($"Waiting for {TheatricsPendingClients.Count} ({TheatricsManager.Get().m_playerConnectionIdsInUpdatePhase.Count}) clients to perform theatrics");

            while (TheatricsPendingClients.Count > 0)  // TODO add timelimit
            {
                yield return(new WaitForSeconds(1));
            }
        }