コード例 #1
0
ファイル: CoinTests.cs プロジェクト: weberer/pakupaku
        public void IsPositionOverTest()
        {
            CoinDisplayManager manager = CoinDisplayManager.getCoinDisplaymanager();
            var mech1    = CoinDisplayManager.CoinMechs.Mech1;
            var mech2    = CoinDisplayManager.CoinMechs.Mech2;
            var mechNone = CoinDisplayManager.CoinMechs.None;

            // Test over Coin Pile
            var xLoc = (COIN_PILE.X + COIN_PILE.Width / 2);
            var yLoc = (COIN_PILE.Y + COIN_PILE.Height / 2);

            Assert.IsFalse(manager.IsOverCoinPile(0, 0));
            Assert.IsTrue(manager.IsOverCoinPile(xLoc, yLoc));

            // Test Over Coin Slots
            xLoc = (COIN_SLOT_1.X + COIN_SLOT_1.Width / 2);
            yLoc = (COIN_SLOT_1.Y + COIN_SLOT_1.Height / 2);
            Assert.AreEqual(mechNone, manager.GetCoinSlotIsOver(0, 0));
            Assert.AreEqual(mech1, manager.GetCoinSlotIsOver(xLoc, yLoc));

            xLoc = (COIN_SLOT_2.X + COIN_SLOT_2.Width / 2);
            yLoc = (COIN_SLOT_2.Y + COIN_SLOT_2.Height / 2);
            Assert.AreEqual(mech2, manager.GetCoinSlotIsOver(xLoc, yLoc));

            // Test over Coin Returns
            xLoc = (COIN_RETURN_1.X + COIN_RETURN_1.Width / 2);
            yLoc = (COIN_RETURN_1.Y + COIN_RETURN_1.Height / 2);
            Assert.AreEqual(mechNone, manager.GetCoinReturnIsOver(0, 0));
            Assert.AreEqual(mech1, manager.GetCoinReturnIsOver(xLoc, yLoc));

            xLoc = (COIN_RETURN_2.X + COIN_RETURN_2.Width / 2);
            yLoc = (COIN_RETURN_2.Y + COIN_RETURN_2.Height / 2);
            Assert.AreEqual(mech2, manager.GetCoinReturnIsOver(xLoc, yLoc));

            // Test Coin Mechs
            Assert.IsFalse(manager.IsOverCoinMech(0, 0));
            Assert.IsTrue(manager.IsOverCoinMech(xLoc, yLoc));
        }
コード例 #2
0
ファイル: GameBoxForm.cs プロジェクト: weberer/pakupaku
        /**
         * Mouse Down for coin pile click and drag
         */
        private void GameBoxForm_MouseDown(object sender, MouseEventArgs e)
        {
            if (coinManager.IsOverCoinPile(e.X, e.Y))
            {
                coinManager.ProcessPileClicked();
            }

            CoinDisplayManager.CoinMechs slotClicked = coinManager.GetCoinSlotIsOver(e.X, e.Y);
            int creditsReceived = coinManager.InsertCoin(slotClicked);

            credit.AddCredit(creditsReceived);

            CoinDisplayManager.CoinMechs coinReturnClicked = coinManager.GetCoinReturnIsOver(e.X, e.Y);
            coinManager.ProcessCoinReturnClick(coinReturnClicked);

            Refresh();
        }