Esempio n. 1
0
 void Update()
 {
     if (isServer && votes.Count >= NetworkServer.connections.Count)
     {
         int selection = votes.Pick();
         votes.Clear();
         RpcSelectDecision(selection);
     }
 }
Esempio n. 2
0
        void Start()
        {
            if (isServer)
            {
                GamePaused = true;

                size.Clear();
                score.Clear();

                if (size.Count != teams.Length)
                {
                    for (int i = 0; i < teams.Length; i++)
                    {
                        size.Add(0);
                        score.Add(0);
                    }
                }
                //Debug.Log("GameManger: " + size.Count);
            }


            //start the timer here when the server starts
            //Run on both the client and server, updated once when the player actually connects
            CurrentGameTime = MaxGameTime;

            for (int i = 0; i < teams.Length; i++)
            {
                ui.OnTeamSizeChanged(i);
            }

            for (int i = 0; i < teams.Length; i++)
            {
                ui.OnTeamScoreChanged(i);
            }
        }
Esempio n. 3
0
    public void add()
    {
        int _number = Convert.ToInt32(input.text);

        Debug.Log("input = " + _number.ToString());

        if (_numberNumbers < 2)                         // Zahl hinzufügen
        {
            SyncListNmb.Add(_number);
            _numberNumbers++;
        }

        Debug.Log("have " + _numberNumbers + " numbers");

        if (isServer)
        {
            Numbers nmb = (Numbers)NumbersObject.GetComponent("Numbers");   // NumbersObject spawnen
            nmb._playerNumbers = SyncListNmb;
            NetworkServer.Spawn(NumbersObject);
        }

        if (_numberNumbers == 2)                                            // wenn 2 Zahlen vorhanden sind, wird das Ergebnis berechnet und das 'array' zurückgesetzt
        {
            _numberNumbers = 0;
            this.CmdCalculate();
            SyncListNmb.Clear();
        }
    }
Esempio n. 4
0
    void CmdAddNumber(int nmb)
    {
        if (!isServer)
        {
            return;
        }

        if (_numberNumbers < 2)
        {
            SyncListNmb.Add(nmb);
            _numberNumbers++;
        }

        Debug.Log("have " + _numberNumbers + " numbers");

        Numbers nmbrs = (Numbers)NumbersObject.GetComponent("Numbers");

        nmbrs._playerNumbers = SyncListNmb;
        NetworkServer.Spawn(NumbersObject);

        if (_numberNumbers == 2)
        {
            _numberNumbers = 0;
            this.CmdCalculate();
            SyncListNmb.Clear();
        }
    }
Esempio n. 5
0
 private void Cmd_InitSelectedCards()
 {
     SelectedCards.Clear();
     for (int i = 0; i < 4; i++)
     {
         SelectedCards.Add(-1);
     }
 }
Esempio n. 6
0
 public void ResetScores()
 {
     scores.Clear();
     for (int i = 0; i < 4; i++)
     {
         scores.Add(0);
     }
 }
Esempio n. 7
0
        private void SetupQuestIds()
        {
            if (!IsServer)
            {
                return;
            }

            questIds.Clear();
            FindQuestFromDialog(startDialog);
        }
Esempio n. 8
0
 void Die()
 {
     //Return to neutral
     if (ID != -1)
     {
         SpawnQueue.Clear();
         Health = 100;
         ID     = -1;
         return;
     }
     //Give ownership to attacker
     else
     {
         SpawnQueue.Clear();
         Health = 100;
         ID     = AttackerID;
         return;
     }
 }
Esempio n. 9
0
 public void PrepararInicioCorrida()
 {
     tempoVoltas.Clear();
     concentracaoLista.Clear();
     tempoText.text       = FormatarTempoCorrida(0);
     melhorTempoText.text = FormatarTempoCorrida(0);
     AlterarExibicaoPremio(false);
     voltas = 0;
     controladorJogo.AlterarExibicaoVencedor(false);
 }
Esempio n. 10
0
    public void ServerChangeOccupation(Occupation occupation, bool grantDefaultAccess = true, bool clear = true)
    {
        if (clear)
        {
            accessSyncList.Clear();
        }
        if (grantDefaultAccess)
        {
            ServerAddAccess(occupation.AllowedAccess);
        }

        jobType = occupation.JobType;
    }
Esempio n. 11
0
 void DeleteRooms()
 {
     if (!isServer)
     {
         return;
     }
     dungeonX.Clear();
     dungeonY.Clear();
     foreach (var item in rooms)
     {
         NetworkServer.Destroy(item);
     }
     rooms.Clear();
 }
Esempio n. 12
0
 public override void OnStartServer()
 {
     _stocks.Clear();
     IsActive = true;
     foreach (var player in PlayerManager.Instance.MatchPlayers)
     {
         _stocks.Add(-1);
         player.Changed += () => {
             if (player.Type.IsActive && _stocks[player.ID] < 0)
             {
                 _stocks[player.ID] = stock;
             }
         };
     }
 }
Esempio n. 13
0
 public void SetSkillLevel(int s, int[] digits)
 {
     skillLevel = s;
     filledNum  = 0;
     // Set board data
     boardData.Clear();
     for (int i = 0; i < widths[skillLevel] * widths[skillLevel]; i++)
     {
         boardData.Add(digits[i]);
         if (digits[i] > 50)
         {
             filledNum++;
         }
     }
 }
Esempio n. 14
0
 public void ResetStatus()
 {
     finished   = false;
     now_player = 1;
     status.Clear();
     for (int i = 0; i < 3; i++)
     {
         for (int j = 0; j < 3; j++)
         {
             status.Add(0);
         }
     }
     if (isClient)
     {
         CmdReset();
     }
 }
Esempio n. 15
0
    private IEnumerator GetQuestionNrAsync()
    {
        var countTask = ParseObject.GetQuery("Quiz").CountAsync();

        while (!countTask.IsCompleted)
        {
            yield return(null);
        }
        int anz = countTask.Result;

        int [] questions = new int[anz < 15 ? anz : 15];
        FillWithRandomUniqueNumbers(questions, anz);

        if (questionsSynced.Count > 0)
        {
            questionsSynced.Clear();
        }
        for (int i = 0; i < questions.Length; i++)
        {
            questionsSynced.Add(questions[i]);
        }
    }
Esempio n. 16
0
    //黑天状态
    private void OnDayOff()
    {
        //关闭制币机
        foreach (var item in makeCoin)
        {
            item.GetComponent<MakeCoin>().Rest(false);//重置

        }
        //人物状态改变
        foreach (var item in player)
        {
            item.isDay = false;
            item.RpcPopMessage("黑夜来临,你有20秒时间进行投票");
        }
        //投票系统初始化
        for (int i = 0; i <voteNum.Length; i++)
        {
            voteNum[i] = 0;
        }
        voteCount = 0;
        vote.Clear();
        StartCoroutine(Result());
    }
Esempio n. 17
0
    /// <summary>
    /// Finds nearby water tile to set as spawn tile and initializes port market
    /// </summary>
    public void InitializePort()
    {
        foreach (HexCoordinate hc in GetComponentInParent <HexTile>().Directions)
        {
            HexTile neighbor = GetComponentInParent <HexTile>().GetNeighbor(hc);

            if (neighbor && neighbor.IsWater)
            {
                SpawnTile = GetComponentInParent <HexTile>().GetNeighbor(hc);
                break;
            }
        }

        Market = new Cargo(Random.Range(0, 500), Random.Range(0, 500), Random.Range(0, 500), Random.Range(0, 500), Random.Range(0, 500));

        PortGold = Random.Range(5000, 20000);

        PortPrices.Clear();

        for (var i = 0; i < 5; i++)
        {
            PortPrices.Add(DefaultPortPrices[i] + Random.Range(-PortPriceMods[i], PortPriceMods[i]));
        }
    }
Esempio n. 18
0
    public void OnCollisionEnter(Collision collision)
    {
        int result1;

        if (collision.gameObject.tag == "Player" && collision.gameObject.GetComponent <PlayerMovementScript>().isAlive&& this.GetComponent <PlayerMovementScript>().isAlive)
        {
            // FIGHT!


            List <int> CurrentHand = new List <int>();
            string[,] CurrentHandInString = new string[5, 2]; //change to poker game format



            //collision.gameObject.GetComponent<PokerGame>().PlayScore();
            foreach (int element in iList)
            {
                CurrentHand.Add(element);
            }
            int i = 0;
            foreach (int element in CurrentHand)
            {
                CurrentHandInString[i, 0] = NumToSuitsAndNumber(element)[0];
                CurrentHandInString[i, 1] = NumToSuitsAndNumber(element)[1];

                i++;
            }



            Debug.Log("both player's card is" + collision.gameObject.GetComponent <PlayerCard>().BuildList());
            Debug.Log("both handscore is" + HandScore);

            result1 = GameObject.Find("TimerAndSound").GetComponent <PokerGame>().CompareHands(CurrentHandInString, collision.gameObject.GetComponent <PlayerCard>().HandInString(collision.gameObject.GetComponent <PlayerCard>().iList));

            if (result1 == 0)
            {
                if (isLocalPlayer)
                {
                    Debug.Log("You Win!");
                    WinSign.text = "WayToGo!";
                    //System.Threading.Thread.Sleep(3);
                    //WinSign.text = "";
                }
            }
            else if (result1 == 1)
            {
                //removing its renderer in server
                RpcRemoveRender();

                /*
                 * Renderer[] renderes = this.GetComponentsInChildren<Renderer>();
                 *
                 * foreach (Renderer ren in renderes)
                 * {
                 *  ren.enabled = false;
                 *  //this part is should be on islocalplayer
                 * }
                 */
                //NetworkServer.Destroy(this.gameObject);



                if (isLocalPlayer) //if you loose, then set it
                {
                    LooseSign.text = "You Lost All Money";
                    CmdKill();
                    foreach (int element in iList)
                    {
                        CmdDropACards(element);
                    }
                    iList.Clear();
                }
            }


            /*
             *
             *
             *
             *
             * if (isLocalPlayer)
             *
             *
             * {//승패시 결과 처리 부분
             *
             *  if (result1 == 0)
             *  {
             *      //ThisCanvas.
             *      Debug.Log("You Win!");
             *      WinSign.text = "WayToGo!";
             *
             *
             *  }
             *  else
             *  {
             *      Debug.Log("You lost!");
             *      LooseSign.text = "You Lost All Money";
             *      this.GetComponent<PlayerMovementScript>().isAlive = false;
             *      //this.GetComponent<MeshRenderer>().enabled = false;
             *      //this.GetComponent<Collider>().enabled = false;
             *      foreach (int element in iList)
             *      {
             *          CmdDropACards(element);
             *      }
             *
             *
             *      //iList.Clear();
             *
             *      //Rpcannounce(); //이렇게 하면 렌더링 초기화가 안됌
             *      Renderer[] renderes = GetComponentsInChildren<Renderer>();
             *      foreach (Renderer ren in renderes)
             *      {
             *          ren.enabled = false;
             *
             *
             *      }
             *
             *
             *
             *
             *
             *
             *  }
             *
             *
             * }*/
        }
    }
Esempio n. 19
0
 public void clearActive()
 {
     activePlayers.Clear();
     numActive = 0;
 }
Esempio n. 20
0
 public void ClearScoreList()
 {
     scoreList.Clear();
 }