Example #1
0
        public void PlayerInJailRollsDoublesToGetOut()
        {
            var mockDice = new Mock <IDice>();

            mockDice.Setup(d => d.RollResults).Returns(4);
            mockDice.Setup(d => d.Doubles).Returns(true);

            var board        = new Board(banker, mockDice.Object);
            var turnHandler  = new TurnHandler(board, banker, mockDice.Object);
            var roundHandler = new RoundHandler(turnHandler);
            var testGame     = new Game(banker, roundHandler);

            var playerCar = testGame.CreatePlayerAccount("Car");

            board.SendPlayerToJail(playerCar);

            List <TurnEventArgs> playerTurns = new List <TurnEventArgs>();

            turnHandler = new TurnHandler(board, banker, mockDice.Object);
            turnHandler.TurnFinished += (s, e) => { if (e.Player.Equals(playerCar))
                                                    {
                                                        playerTurns.Add(e);
                                                    }
            };

            var cashBeforeTurn = banker.GetPlayerBalance(playerCar);

            turnHandler.TakeTurn(playerCar, 0, 0);

            Assert.AreEqual(14, playerCar.Location);
            Assert.IsFalse(playerCar.InJail);
            Assert.AreEqual(0 + 160, cashBeforeTurn - banker.GetPlayerBalance(playerCar));
        }
Example #2
0
        public void PlayerContinuoslyRollsDoubles_EndsUpInJail()
        {
            var mockDice = new Mock <IDice>();

            mockDice.Setup(d => d.RollResults).Returns(4);
            mockDice.Setup(d => d.Doubles).Returns(true);

            var board        = new Board(banker, mockDice.Object);
            var turnHandler  = new TurnHandler(board, banker, mockDice.Object);
            var roundHandler = new RoundHandler(turnHandler);
            var testGame     = new Game(banker, roundHandler);

            var playerCar   = testGame.CreatePlayerAccount("Car");
            var playerHorse = testGame.CreatePlayerAccount("Horse");
            var playerIron  = testGame.CreatePlayerAccount("Iron");

            List <TurnEventArgs> playerTurns = new List <TurnEventArgs>();

            turnHandler = new TurnHandler(board, banker, mockDice.Object);
            turnHandler.TurnFinished += (s, e) => { if (e.Player.Equals(playerCar))
                                                    {
                                                        playerTurns.Add(e);
                                                    }
            };

            turnHandler.TakeTurn(playerCar, 0, 0);

            var jailLocation = 10;

            Assert.AreEqual(3, playerTurns[0].GoAgainCount);
            Assert.AreEqual(jailLocation, playerCar.Location);
            Assert.IsTrue(playerCar.InJail);
        }
Example #3
0
        public void PlayerRollsDoublesLandsOnGoToJailDoesNotGoAgain()
        {
            var mockDice = new Mock <IDice>();

            mockDice.Setup(d => d.RollResults).Returns(4);
            mockDice.Setup(d => d.Doubles).Returns(true);

            var board        = new Board(banker, mockDice.Object);
            var turnHandler  = new TurnHandler(board, banker, mockDice.Object);
            var roundHandler = new RoundHandler(turnHandler);
            var testGame     = new Game(banker, roundHandler);

            var playerCar = testGame.CreatePlayerAccount("Car");

            playerCar.Location = 26;
            var cashBeforeTurn = banker.GetPlayerBalance(playerCar);

            turnHandler = new TurnHandler(board, banker, mockDice.Object);
            List <TurnEventArgs> playerTurns = new List <TurnEventArgs>();

            turnHandler.TurnFinished += (s, e) => { if (e.Player.Equals(playerCar))
                                                    {
                                                        playerTurns.Add(e);
                                                    }
            };

            turnHandler.TakeTurn(playerCar, 0, 0);

            var jailLocation = 10;

            Assert.AreEqual(0, playerTurns[0].GoAgainCount);
            Assert.AreEqual(jailLocation, playerCar.Location);
            Assert.IsTrue(playerCar.InJail);
            Assert.AreEqual(0, cashBeforeTurn - banker.GetPlayerBalance(playerCar));
        }
 private void Start()
 {
     PopularityPercentage       = StartingPopularityPercentage;
     roundHandler               = FindObjectOfType <RoundHandler>();
     roundHandler.OnRoundStart += OnRoundStart;
     roundHandler.OnRoundEnd   += OnRoundEnd;
 }
Example #5
0
        public void PlayerGoesToJailDoesNotCollect200ForPassingGo()
        {
            var mockDice = new Mock <IDice>();

            mockDice.Setup(d => d.RollResults).Returns(3);
            mockDice.Setup(d => d.Doubles).Returns(false);

            var board        = new Board(banker, mockDice.Object);
            var turnHandler  = new TurnHandler(board, banker, mockDice.Object);
            var roundHandler = new RoundHandler(turnHandler);
            var testGame     = new Game(banker, roundHandler);

            var playerCar = testGame.CreatePlayerAccount("Car");

            playerCar.Location = 27;
            var cashBeforeTurn = banker.GetPlayerBalance(playerCar);

            board.AdvancePlayerOnBoard(playerCar, 3);

            var jailLocation = 10;

            Assert.AreEqual(jailLocation, playerCar.Location);
            Assert.IsTrue(playerCar.InJail);
            Assert.AreEqual(0, cashBeforeTurn - banker.GetPlayerBalance(playerCar));
        }
Example #6
0
 public GrappachuStrategy()
     : base(StrategyName)
 {
     _watcher      = new Watcher();
     _roundHandler = new P4R4Handler();
     _roundHandler
     .SetSuccessor(new DefaultRoundHandler());
 }
Example #7
0
        static void Main(string[] args)
        {
            Console.WriteLine("\U0001F0D1");
            Console.WriteLine(Encoding.UTF8.GetString(Encoding.UTF8.GetBytes("\U0001F0D1")));

            var handler = new RoundHandler();

            handler.Start();
        }
Example #8
0
    // Use this for initialization
    void Start()
    {
        curRound   = 0;
        roundReady = true;
        gold       = startGold;
        move       = false;
        distance   = 0;

        nextRoundButton.onClick.AddListener(startNextRound);
        roundHandler = this;
    }
Example #9
0
        public void TestInitialize()
        {
            dice   = new Dice();
            banker = new Banker();
            board  = new Board(banker, dice);
            var turnHandler  = new TurnHandler(board, banker, dice);
            var roundHandler = new RoundHandler(turnHandler);

            game   = new Game(banker, roundHandler);
            player = game.CreatePlayerAccount("Test");
        }
        public void TestInitialize()
        {
            dice  = new Dice();
            board = new Board(banker, dice);

            var turnHandler  = new TurnHandler(board, banker, dice);
            var roundHandler = new RoundHandler(turnHandler);
            var game         = new Game(banker, roundHandler);

            car   = game.CreatePlayerAccount("Car");
            horse = game.CreatePlayerAccount("Horse");
        }
Example #11
0
        public void TestInitialize()
        {
            mockDice = new Mock <IDice>();
            board    = new Board(banker, mockDice.Object);

            var turnHandler  = new TurnHandler(board, banker, mockDice.Object);
            var roundHandler = new RoundHandler(turnHandler);

            game = new Game(banker, roundHandler);

            player = game.CreatePlayerAccount("Test");
        }
Example #12
0
        private void RegisterEvents()
        {
            RoundHandler  = new RoundHandler();
            PlayerHandler = new PlayerHandler(this);

            EXILED.Events.RoundRestartEvent += RoundHandler.OnRoundRestart;

            EXILED.Events.ConsoleCommandEvent     += PlayerHandler.OnConsoleCommand;
            EXILED.Events.RemoteAdminCommandEvent += PlayerHandler.OnRemoteAdminCommand;
            EXILED.Events.PlayerJoinEvent         += PlayerHandler.OnPlayerJoin;
            EXILED.Events.PlayerLeaveEvent        += PlayerHandler.OnPlayerLeave;
        }
Example #13
0
    // Update is called once per frame
    void Update()
    {
        RoundHandler roundHandlerScript = RoundHandler.GetComponent <RoundHandler>();

        if (roundHandlerScript.CanFire())
        {
            imageComponent.sprite = enabledSprite;
        }
        else
        {
            imageComponent.sprite = disabledSprite;
        }
    }
Example #14
0
    // Use this for initialization
    void Start()
    {
        curRound   = 0;
        roundReady = true;
        gold       = startGold;
        move       = false;
        distance   = 0;

        nextRoundButton.onClick.AddListener(startNextRound);
        roundHandler = this;

        EnemiesRemainingText.text = RoundEnemyCounts[curRound] + " enemies next";
    }
Example #15
0
        public void PlayGameWithLessThan2Players_ExceptionShouldBeThrown()
        {
            var board = new Board(banker, dice);

            var  turnHandler  = new TurnHandler(board, banker, dice);
            var  roundHandler = new RoundHandler(turnHandler);
            Game testGame     = new Game(banker, roundHandler);

            testGame.CreatePlayerAccount("Car");

            var round = 1;

            testGame.Play(round);
        }
        public Round(List <Charakter> particioners)
        {
            Count = 1;
            Console.WriteLine(String.Format("Round {0} has started", Count));
            Particioners = new List <CharakterOrder>(particioners.Capacity);
            foreach (Charakter charakter in particioners)
            {
                Particioners.Add(new CharakterOrder(charakter));
            }
            Particioners.Sort(new GFG());
            RoundHandler.ShowParticioners(this);

            Charakter subscribedObject = this.PickCharakter();

            subscribedObject.Event += ProveActionEconomy;
        }
Example #17
0
        public void PlayerLandsOnGoToJailEndsUpVisitingJail()
        {
            var banker   = new Banker();
            var dice     = new Dice();
            var board    = new Board(banker, dice);
            var goToJail = new GoToJail(30, "Go To Jail", 10);

            var turnHandler  = new TurnHandler(board, banker, dice);
            var roundHandler = new RoundHandler(turnHandler);
            var game         = new Game(banker, roundHandler);
            var player       = game.CreatePlayerAccount("Car");

            goToJail.Land(player);

            Assert.AreEqual(10, player.Location);
        }
        public void TestInitialize()
        {
            dice   = new Dice();
            banker = new Banker();
            board  = new Board(banker, dice);

            var turnHandler  = new TurnHandler(board, banker, dice);
            var roundHandler = new RoundHandler(turnHandler);

            game = new Game(banker, roundHandler);

            electric = board.GetNextSpace(11) as UtilityProperty;
            water    = board.GetNextSpace(27) as UtilityProperty;

            player = game.CreatePlayerAccount("Car");
            horse  = game.CreatePlayerAccount("Horse");
        }
Example #19
0
        public void PlayerSpendsThreeTurnsInJailPays50ToGetOut()
        {
            var mockDice = new Mock <IDice>();

            mockDice.Setup(d => d.RollResults).Returns(3);
            mockDice.Setup(d => d.Doubles).Returns(false);

            var board        = new Board(banker, mockDice.Object);
            var turnHandler  = new TurnHandler(board, banker, mockDice.Object);
            var roundHandler = new RoundHandler(turnHandler);
            var testGame     = new Game(banker, roundHandler);


            var playerCar = testGame.CreatePlayerAccount("Car");

            board.SendPlayerToJail(playerCar);

            turnHandler = new TurnHandler(board, banker, mockDice.Object);
            List <TurnEventArgs> playerTurns = new List <TurnEventArgs>();

            turnHandler.TurnFinished += (s, e) => { if (e.Player.Equals(playerCar))
                                                    {
                                                        playerTurns.Add(e);
                                                    }
            };

            var jailLocation = 10;

            turnHandler.TakeTurn(playerCar, 0, 0);
            Assert.AreEqual(jailLocation, playerCar.Location);
            Assert.IsTrue(playerCar.InJail);
            Assert.AreEqual(1500, banker.GetPlayerBalance(playerCar));

            turnHandler.TakeTurn(playerCar, 1, 0);
            Assert.AreEqual(jailLocation, playerCar.Location);
            Assert.IsTrue(playerCar.InJail);
            Assert.AreEqual(1500, banker.GetPlayerBalance(playerCar));

            var cashBeforeTurn = banker.GetPlayerBalance(playerCar);
            var costSpace13    = 140;

            turnHandler.TakeTurn(playerCar, 2, 0);
            Assert.AreEqual(13, playerCar.Location);
            Assert.IsFalse(playerCar.InJail);
            Assert.AreEqual(costSpace13 + 50, cashBeforeTurn - banker.GetPlayerBalance(playerCar));
        }
Example #20
0
        public void TestInitialize()
        {
            var dice = new Dice();

            board                = new Board(banker, dice);
            readingRailRoad      = board.GetNextSpace(4) as RailRoadProperty;
            pennsylvaniaRailRoad = board.GetNextSpace(14) as RailRoadProperty;
            bAndORailRoad        = board.GetNextSpace(24) as RailRoadProperty;
            shortLineRailRoad    = board.GetNextSpace(34) as RailRoadProperty;

            var turnHandler  = new TurnHandler(board, banker, dice);
            var roundHandler = new RoundHandler(turnHandler);

            game = new Game(banker, roundHandler);

            player = game.CreatePlayerAccount("Car");
            horse  = game.CreatePlayerAccount("Horse");
        }
Example #21
0
        public void OnBuildEnd()
        {
            //finishes the build event in order to prevent exceptions
            Debug.Log("Ended Build");
            OnDrag = false;
            RoundHandler.CheckGold();


            //restores layers and lists for selecteddot and selecteddotbefore
            if (selectedDot != null)
            {
                foreach (Connection c in selectedDot.Connections)
                {
                    c.cube.gameObject.layer = 8;
                }
                selectedDot.UpdateList();
                selectedDot.UpdateRecognition();
            }
            //restores color of selected fragments
            foreach (DotFragment fragment in selectedDotBefore.DotFragments)
            {
                fragment.SelectColor(true);
            }
            foreach (DotFragment fragment in selectedDot.DotFragments)
            {
                fragment.SelectColor(true);
            }
            if (selectedDotBefore != null)
            {
                foreach (Connection c in selectedDotBefore.Connections)
                {
                    c.cube.gameObject.layer = 8;
                }
                selectedDotBefore.UpdateList();
                selectedDotBefore.UpdateRecognition();
            }
            clickRegist = null;
            //Signals to the connections to revert all layers
            foreach (Connection c in FindObjectsOfType <Connection>())
            {
                c.cube.gameObject.layer = 8;
            }
        }
    virtual protected void InitGame()
    {
        //Init Dealer
        dealer.Init();

        //update players
        UpdatePlayers();

        //init Round Handler
        _roundHandler = gameObject.AddComponent <RoundHandler>();
        _roundHandler.Init();

        //if host
        if (Networking.isHost)
        {
            dealer.ShuffleCards();
            DispatchHostSelected();
        }

        //add event listeners
        AddListeners();
    }
Example #23
0
 // Use this for initialization
 void Start()
 {
     gm   = this;
     rm   = FindObjectOfType <RoundHandler>();
     casm = FindObjectOfType <Casual>();
     Tutm = FindObjectOfType <Tutorial>();
     Application.targetFrameRate = 1000;
     QualitySettings.vSyncCount  = 0;
     if (tilling.tillingMode == Tilling.TillingMode.Hexagonal)
     {
         HexagonalTilling(tilling.Range, tilling.Radius, tilling.Center);
     }
     if (gamemode == GameMode.Casual)
     {
         casm.InitializePlayers();
     }
     if (gamemode == GameMode.Tutorial)
     {
         Tutm.InitializePlayers();
     }
     RoundHandler.StartGame();
 }
Example #24
0
    void OnClick()
    {
        RoundHandler roundHandler = RoundHandler.GetComponent <RoundHandler>();

        roundHandler.IsFiring = !roundHandler.IsFiring;
    }
Example #25
0
 void EndTurn()
 {
     RoundHandler.CheckGold();
     RoundHandler.NextPlayer();
 }