コード例 #1
0
ファイル: Sprint3Tests.cs プロジェクト: Sway623/Mario-3902
        public void TestMarioOnTopOfBlockCollisionHandling()
        {
            Mario      mario = new Mario(new Vector2(100, 110));
            FloorBlock block = new FloorBlock(new Vector2(100, 100));

            Rectangle marioRect = mario.GetRectangle();
            Rectangle blockRect = block.GetRectangle();

            Game1.Side collisionType = Game1.Side.Bottom;
            MarioBlockCollisionHandler.HandleCollision(mario, block, collisionType);

            //Assert.AreEqual(111, mario.location.Y);
        }
コード例 #2
0
ファイル: Sprint3Tests.cs プロジェクト: Sway623/Mario-3902
        public void TestMarioOnLeftOfBlockCollisionHandling()
        {
            Mario      mario = new Mario(new Vector2(101, 100));
            FloorBlock block = new FloorBlock(new Vector2(120, 100));

            Rectangle marioRect = mario.GetRectangle();
            Rectangle blockRect = block.GetRectangle();

            Game1.Side collisionType = Game1.Side.Right;
            MarioBlockCollisionHandler.HandleCollision(mario, block, collisionType);

            //Assert.AreEqual(102, mario.location.X);
        }
コード例 #3
0
ファイル: Sprint3Tests.cs プロジェクト: Sway623/Mario-3902
        public void TestMarioOnTopOfBlockCollisionDetector()
        {
            Mario      mario = new Mario(new Vector2(100, 100));
            FloorBlock block = new FloorBlock(new Vector2(100, 110));

            Rectangle marioRect = mario.GetRectangle();
            Rectangle blockRect = block.GetRectangle();

            GeneralCollisionDetector generalDetector = new GeneralCollisionDetector();

            Game1.Side collisionType = generalDetector.DetermineCollision(marioRect, blockRect);

            Assert.AreEqual(collisionType, Game1.Side.Bottom);
        }
コード例 #4
0
ファイル: Sprint3Tests.cs プロジェクト: Sway623/Mario-3902
        public void TestEnemyOnLeftOfBlockCollisionDetection()
        {
            Goomba     enemy = new Goomba(new Vector2(100, 100));
            FloorBlock block = new FloorBlock(new Vector2(120, 100));

            Rectangle enemyRect = enemy.GetRectangle();
            Rectangle blockRect = block.GetRectangle();

            GeneralCollisionDetector generalDetector = new GeneralCollisionDetector();

            Game1.Side collisionType = generalDetector.DetermineCollision(enemyRect, blockRect);

            Assert.AreEqual(collisionType, Game1.Side.Right);
        }
コード例 #5
0
ファイル: Sprint3Tests.cs プロジェクト: Sway623/Mario-3902
        public void TestEnemyOnRightOfBlockCollisionHandling()
        {
            IEnemy     enemy       = new Goomba(new Vector2(110, 100));
            Goomba     staticEnemy = new Goomba(new Vector2(100, 100));
            FloorBlock block       = new FloorBlock(new Vector2(100, 100));

            Rectangle enemyRect = enemy.GetRectangle();
            Rectangle blockRect = block.GetRectangle();

            Game1.Side collisionType = Game1.Side.Left;
            EnemyBlockCollisionHandler.HandleCollision(enemy, block, collisionType);

            IEnemyState enemyState    = enemy.GetState();
            IEnemyState expectedState = new GoombaLeftMovingState(staticEnemy);

            Assert.AreEqual(enemyState.ToString(), expectedState.ToString());
        }