Beispiel #1
0
        public Spel(Game g, List<Speler> spelers, int afgepakt)
        {
            this.Game = g;
            this.spelers = spelers;
            this.GekozenModes = new Dictionary<Spelmode, Speler>();
            this.Kaarten = new Dictionary<Speler, List<Kaart>>();
            this.Slagen = new Dictionary<Speler, List<Slag>>();

            foreach (Speler s in spelers)
                Slagen.Add(s, new List<Slag>());

            Dictionary<int, List<Kaart>> result = Boek.Deling(afgepakt);
            foreach (KeyValuePair<int, List<Kaart>> kvp in result)
                Kaarten.Add(Spelers[kvp.Key], kvp.Value);

            Troef = result.Last().Value.Last().Soort;

            foreach (Speler s in spelers)
                s.Client.GetClientProxy<IWiesGameClient>().ReceiveHand(Kaarten[s]);

            Timer t = new Timer();
            t.Interval = 2000;
            t.AutoReset = false;
            t.Elapsed +=t_Elapsed2;
            t.Start();
        }
Beispiel #2
0
        public Spel(Game g, List<Speler> spelers, int afgepakt)
        {
            this.Game = g;
            this.spelers = spelers;
            this.GekozenModes = new Dictionary<Spelmode, Speler>();
            this.Kaarten = new Dictionary<Speler, List<Kaart>>();

            Dictionary<int, List<Kaart>> result = Boek.Deling(afgepakt);
            foreach (KeyValuePair<int, List<Kaart>> kvp in result)
                Kaarten.Add(Spelers[kvp.Key], kvp.Value);

            foreach (Speler s in spelers)
                s.Client.GetClientProxy<IWiesGameClient>().ReceiveHand(Kaarten[s]);
        }
Beispiel #3
0
        public bool Login(string username, string password)
        {
            //ADD DATABASE CREDENTIALS & SHIT HERE
            if (Spelers.Where(o => o.Name.ToLower() == username.ToLower()).Count() != 0)
            {
                throw new Exception("Username already taken!");
            }
            else if (Spelers.Count >= 4)
            {
                throw new Exception("Server full!");
            }
            else
            {
                Spelers.Add(new Speler(Spelers.Count, username, CurrentClient));
                WriteLog("New speler logged in: " + username);

                if(Spelers.Count == 4)
                {
                    Game = new Game(Spelers);
                    WriteLog("4 players detected: New Game started!");
                    WriteToAll("Starting new game...");
                    foreach (Speler s in Spelers)
                        s.Client.GetClientProxy<IWiesGameClient>().ReceiveSpelers(Spelers, s);
                    Game.StartSpel();
                    System.Timers.Timer t = new System.Timers.Timer(5000);
                    t.AutoReset = false;
                    t.Elapsed += t_Elapsed;
                    t.Start();
                }
            }

            return true;
        }