Exemplo n.º 1
0
 private void OnDestroy()
 {
     if (s_instance == this)
     {
         s_instance = null;
     }
 }
Exemplo n.º 2
0
        private IEnumerator TurnDecision()
        {
            GameFlowData.Get().gameState = GameState.BothTeams_Decision;
            // TODO timebanks
            GameFlowData.Get().Networkm_willEnterTimebankMode           = false;
            GameFlowData.Get().Networkm_timeRemainingInDecisionOverflow = 0;

            foreach (ActorData actor in GameFlowData.Get().GetActors())
            {
                var turnSm = actor.gameObject.GetComponent <ActorTurnSM>();
                ArtemisServerGameManager.Get().ClearAbilityRequests(actor);
                actor.AppearAtBoardSquare(actor.TeamSensitiveData_authority.MoveFromBoardSquare);
                ArtemisServerMovementManager.Get().ClearMovementRequest(actor, true);
                turnSm.CallRpcTurnMessage((int)TurnMessage.TURN_START, 0);
            }
            ArtemisServerMovementManager.Get().UpdateTurn();
            ArtemisServerBarrierManager.Get().UpdateTurn();
            SharedEffectBarrierManager.Get().UpdateTurn();

            Log.Info("TurnDecision");

            while (GameFlowData.Get().GetTimeRemainingInDecision() > 0)
            {
                Log.Info($"Time remaining: {GameFlowData.Get().GetTimeRemainingInDecision()}");

                GameFlowData.Get().CallRpcUpdateTimeRemaining(GameFlowData.Get().GetTimeRemainingInDecision());
                yield return(new WaitForSeconds(2));
            }
        }
Exemplo n.º 3
0
 // modified
 private void Awake()
 {
     s_instance               = this;
     m_endedEffectGuidsSync   = new List <int>();
     m_endedBarrierGuidsSync  = new List <int>();
     m_endedEffectTurnRanges  = new List <int>(new int[m_numTurnsInMemory]);
     m_endedBarrierTurnRanges = new List <int>(new int[m_numTurnsInMemory]);
 }
Exemplo n.º 4
0
 private void RemoveBarriers(List <Barrier> barriersToRemove)
 {
     if (barriersToRemove.Count > 0)
     {
         foreach (Barrier barrier in barriersToRemove)
         {
             Log.Info($"Removing barrier by {barrier.Caster.DisplayName}");
             BarrierManager.Get().RemoveBarrier(barrier);
             SharedEffectBarrierManager.Get().EndBarrier(barrier.m_guid);
             GetBarrierPayload(barrier)?.OnEnd?.Invoke(barrier);
         }
         BarrierManager.Get().CallRpcUpdateBarriers();
     }
 }