예제 #1
0
        public void Foyer_Anheuern(Karte k)
        {
            Spieler s = ActivePlayer;

            if (DienerNachziehDeck.Count() == 0)
            {
                GameManager.RefreshDrawDeck(DienerNachziehDeck, DienerAblageDeck);
                KomponentenNachziehDeck = GameManager.ShuffleDeck(DienerNachziehDeck);
            }

            GameManager.DealSpecific(s.DienerPlaettchen, DienerNachziehDeck, k);
            s.DienerPlaettchen = GameManager.SortCards(s.DienerPlaettchen);
            s.AnzahlAktionen--;
            s.Gold -= 2;
        }
예제 #2
0
        public void InitializeGame(
            List <Karte> komponentenVorrat,
            List <Karte> ideenVorrat,
            List <Karte> dienerVorrat)
        {
            //Nachziehstapel bilden
            foreach (Karte k in komponentenVorrat)
            {
                KomponentenNachziehDeck.Add(k);
            }

            foreach (Karte k in ideenVorrat)
            {
                IdeenNachziehDeck.Add(k);
            }

            foreach (Karte k in dienerVorrat)
            {
                DienerNachziehDeck.Add(k);
            }

            //Die Stapel mischen
            KomponentenNachziehDeck = GameManager.ShuffleDeck(KomponentenNachziehDeck);
            IdeenNachziehDeck       = GameManager.ShuffleDeck(IdeenNachziehDeck);
            DienerNachziehDeck      = GameManager.ShuffleDeck(DienerNachziehDeck);

            //Spieler mit Starthand versehen & diese sortieren
            foreach (Spieler s in Players)
            {
                GameManager.Deal(s.HandKarten, KomponentenNachziehDeck, 2);
                s.StartIdeeZiehen(s.HandKarten, IdeenNachziehDeck);
                s.HandKarten = GameManager.SortCards(s.HandKarten);
            }

            //Startspieler zufällig festlegen
            ActivePlayer = Players[Rand.Next(0, Players.Count())];
        }