コード例 #1
0
    /// <summary>
    /// Create new ready queue
    /// </summary>
    /// <param name="readyCheck">The ready message that was sent to the clients</param>
    /// <param name="clients">Clients joining the ready queue</param>
    public void CreateNewReadyQueue(List <Server_ServerClient> clients, Message_ServerRequest_ReadyCheck readyCheck)
    {
        Console.WriteLine("Creating new ready queue");
        MatchReadyQueue matchQueue = new MatchReadyQueue();

        readyCheckGuidToMatchReadyQueue.Add(readyCheck.ReadGUID(), matchQueue);
        queuesRunningSorted.Add(matchQueue);
    }
コード例 #2
0
        /// <summary>
        /// Will send a ready checkbox to clients for clients to reply
        /// </summary>
        /// <param name="clients">Clients to connect to the match</param>
        private void SendMatchReadyCheck(List <Server_ServerClient> clients)
        {
            Message_ServerRequest_ReadyCheck msg = new Message_ServerRequest_ReadyCheck();

            matchReadyCheckInitiated.Invoke(clients, msg);
            foreach (var client in clients)
            {
                sender.Send(msg, client);
            }
        }
コード例 #3
0
    public void Handle(object objdata)
    {
        var data = (Message_ServerRequest_ReadyCheck)objdata;

        readyCheck = data;
        var timesOutTargets = new List <Counter.timesOut>()
        {
            new Counter.timesOut(client.Dispose),
            new Counter.timesOut(mM_NetworkTransmitter.eventHandler.StartMenu)
        };

        counter = new Counter(data.duration, timesOutTargets);
        mM_NetworkTransmitter.eventHandler.QueueReady(counter);
        updateController.Add(counter);
    }