Ejemplo n.º 1
0
        void client_GetAllLobbiesCompleted(object sender, ServiceReference1.GetAllLobbiesCompletedEventArgs e)
        {
            LobbyClass showTijd = new LobbyClass();

            foreach (var item in e.Result)
            {
                if (item.ID == tellerLobbyID)                                 //Geef de juiste lobby.
                {
                    TijdBox.Text = "Game begins in " + item.Tijd + " sec..."; //Laat de tijd op het scherm zien.
                    tijd         = item.Tijd;
                    if (tijd == 300 && item.Status == "Waiting")              //Voor te bepalen wie de tijd mag setten.
                    {                                                         //De speler die eerst joint, is de host. Deze code gebeurd 1 keer.
                        magIkTijdSetten = true;
                        GiveLobbyID(out tellerLobbyID);
                        GiveSpelerID(ref tellerSpelerID);
                        ServiceReference1.Service1Client client = new ServiceReference1.Service1Client();
                        client.SetHostIDCompleted += client_SetHostIDCompleted; //Stelt deze speler in als host player.
                        client.SetHostIDAsync(tellerSpelerID, tellerLobbyID);
                    }
                    if (magIkTijdSetten == true && LetGameBegin == false) //Wat de host player moet doen.
                    {
                        tijd -= 1;                                        //Tel af..
                        if (tijd == 0 && item.AantalSpelers > 1)          //Als de tijd op 0 staat en er zijn minstens twee spelers...
                        {
                            newTimer.Stop();                              //Stop de timer.
                            LetGameBegin = true;                          //Laat het spel beginnen.
                            tijd         = 400;
                            GiveLobbyID(out tellerLobbyID);

                            ServiceReference1.Service1Client client2 = new ServiceReference1.Service1Client();
                            client2.SetLetGameBeginCompleted += client2_SetLetGameBeginCompleted; //Stel in dat het spel begint.
                            client2.SetLetGameBeginAsync(tellerLobbyID);
                        }
                        else if (tijd == 0) //Wanneer de tijd op 0 is en er zijn niet meer dan 2 spelers.
                        {
                            tijd = 120;
                        }
                        else if ((AllPlayersReady == true && tijd > 10 && item.AantalSpelers > 1))
                        {
                            tijd = 10; //Wanneer alle spelers klaar zijn het spel laten beignnen in 10 seconden.
                        }
                        else
                        {
                            AllPlayersReady = false; //Als er maar 1 speler is mag het spel niet beginnen.
                        }

                        ServiceReference1.Service1Client client = new ServiceReference1.Service1Client();
                        client.SetTimeCompleted += client_SetTimeCompleted; //Pas de tijd in de database aan.
                        client.SetTimeAsync(tellerLobbyID, tijd);
                    }
                    break;
                }
            }
        }