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)); }
/** * Mouse Move for moving coing to the coin slot or pile */ private void GameBoxForm_MouseMove(object sender, MouseEventArgs e) { long currentTicks = DateTime.Now.Ticks; long ticksSinceLastRender = currentTicks - previousRenderTicks; if (coinManager.IsOverCoinPile(e.X, e.Y) || coinManager.IsOverCoinMech(e.X, e.Y)) { Cursor.Current = Cursors.Hand; } else { Cursor.Current = Cursors.Default; } if ((ticksSinceLastRender > MIN_RENDER_TICKS) && coinManager.CheckCoinHeld()) { coinManager.MovePlayersCoin(e.X, e.Y); this.Refresh(); previousRenderTicks = currentTicks; } }