Esempio n. 1
0
        public void StoryDeckCheck()
        {
            QuestMatch game = ScenarioCreator.GameNoDeal(3);
            StoryDeck  deck = new StoryDeck(game);

            Assert.IsTrue(deck.Peek(deck) == "King's Call To Arms");

            for (int i = 0; i < 27; i++)
            {
                deck.Draw();
                if (i == 1)
                {
                    Assert.IsTrue(deck.Peek(deck) == "Chivalrous Deed");
                }
                if (i == 10)
                {
                    Assert.IsTrue(deck.Peek(deck) == "Tournament At York");
                }
                if (i == 20)
                {
                    Assert.IsTrue(deck.Peek(deck) == "Vanquish King Arthur's Enemies");
                }
            }
            Assert.IsTrue(deck.Peek(deck) == "Search For The Holy Grail");
        }
Esempio n. 2
0
        public QuestMatch(Logger logger = null, GameController controller = null)
        {
            this.id            = nextId++;
            this.players       = new List <Player>();
            this.roundEnded    = new List <Player>();
            this.currentPlayer = 0;
            this.storyDeck     = new StoryDeck(this);
            this.adventureDeck = new AdventureDeck(this);
            this.discardPile   = new DiscardPile(this);
            this.currentStory  = null;
            this.logger        = logger;
            this.Log("Creating new Quest match");

            if (controller != null)
            {
                this.controller = controller;
            }
            else
            {
                this.controller = new GameController(new NullQuestMessageHandler(), this);
            }
        }
    public Card drawRiggedCard(int test, StoryDeck storyDeck, int testScenarioStep)
    {
        Card drawnCard = null;

        if (test == 0)
        {
            drawnCard = storyDeck.drawCard();
        }
        else if (test == 1)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("prosperity");
            }
            else if (testScenarioStep == 3)
            {
                drawnCard = storyDeck.getCard("holygrail");
            }
            else
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else if (test == 2)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("holygrail");
            }
        }
        else if (test == 3)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("camelot");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else if (test == 4)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("holygrail");
            }
        }
        else if (test == 5)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("greenknighttest");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("holygrail");
            }
        }
        else if (test == 6)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("kingscall");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("holygrail");
            }
        }
        else if (test == 7)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("holygrail");
            }
        }
        else if (test == 8)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("saxonraiders");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else if (test == 9)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("camelot");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else if (test == 10)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("saxonraiders");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else if (test == 11)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("saxonraiders");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else if (test == 13)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("pox");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else if (test == 14)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("plague");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else if (test == 15)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("recognition");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
            else if (testScenarioStep == 3)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else if (test == 16)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("queensfavor");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else if (test == 17)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("courtcalled");
            }
            else if (testScenarioStep == 3)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else if (test == 18)
        {
            if (testScenarioStep == 1)
            {
                drawnCard = storyDeck.getCard("kingscall");
            }
            else if (testScenarioStep == 2)
            {
                drawnCard = storyDeck.getCard("courtcalled");
            }
            else if (testScenarioStep == 3)
            {
                drawnCard = storyDeck.getCard("boarhunt");
            }
        }
        else
        {
            drawnCard = storyDeck.drawCard();
        }

        return(drawnCard);
    }
    // Use this for initialization
    void Start()
    {
        //Init the decks
        advDeck   = new AdvDeck();
        storyDeck = new StoryDeck();
        rigging   = new TestRiggingFunctions();
        advDeck.initDeck();
        storyDeck.initDeck();
        log.log("decks initialized");
        //testingScenario = PlayerPrefs.GetInt("testScenario");
        //playerCount = PlayerPrefs.GetInt("humanPlayerNum")  + 1 ;
        //aiStrat=PlayerPrefs.GetInt("aiStrategy");

        hp          = new HelperFunctions();
        playerCount = rigging.getRiggedPlayerCount(testingScenario);
        players     = new Player[playerCount];
        for (int i = 0; i < playerCount; i++)
        {
            if (testingScenario == 12 || testingScenario == 13 || testingScenario == 14)
            {
                players[i] = new Player(new Card[12], 4, 0, "Player " + (i));
            }
            else
            {
                players[i] = new Player(new Card[12], 0, 0, "Player " + (i));
            }
        }

        if (testingScenario == 18)
        {
            players[0] = new Player(new Card[12], 4, 0, "Player 1");
        }
        dealHands(playerCount);
        if (rigging.getRiggedAiStratagy(testingScenario) != -1)
        {
            if (rigging.getRiggedAiStratagy(testingScenario) == 1)
            {
                players[rigging.getRiggedAiIndex(testingScenario)].assumingDirectControl(new Strategy1AI(players[rigging.getRiggedAiIndex(testingScenario)]));
            }
            if (rigging.getRiggedAiStratagy(testingScenario) == 2)
            {
                players[rigging.getRiggedAiIndex(testingScenario)].assumingDirectControl(new Strategy2AI(players[rigging.getRiggedAiIndex(testingScenario)]));
            }
        }

        log.Init();
        log.log("Testing scenario is " + testingScenario);
        log.log("There are " + PlayerPrefs.GetInt("aiPlayerNum") + " AI players.");
        log.log("There are " + PlayerPrefs.GetInt("humanPlayerNum") + " Human players.");
        log.log("Current test scenario is " + PlayerPrefs.GetInt("testScenario"));



        ui = new UI(this);
        log.log("Created UI");
        //Create all the players and add it to the players array

        log.log("Created player array");


        log.log("Dealt cards");



        gameStart();
    }