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)); } }