示例#1
0
        public void GetReboundStrategyTest1()
        {
            NonPassableArenaObjectFactory factory = new NonPassableArenaObjectFactory();
            PowerUpBuilder objBuilder             = new PowerUpBuilder().AddDuration(10).AddDiameter(10).AddPosX(10).AddPosY(10);
            PowerUp        powerUp = factory.CreatePowerup(objBuilder);

            Assert.AreEqual(ArenaObjectType.NonPassable, powerUp.Type);
        }
示例#2
0
        public void AddPosYTest()
        {
            PowerUpBuilder builder = new PowerUpBuilder();

            builder.AddPosY(10);
            ArenaObject a = builder.CreateObject();

            Assert.IsTrue(a.PosY == 10);
        }
        public void CreatePowerupTest()
        {
            PassableArenaObjectFactory factory        = new PassableArenaObjectFactory();
            PowerUpBuilder             powerupBuilder = new PowerUpBuilder().AddDiameter(10).AddDuration(10).AddPos(new PongRoyale_shared.Vector2(10, 10));
            PowerUp powerup = factory.CreatePowerup(powerupBuilder);

            Assert.IsTrue(powerup.Type == ArenaObjectType.Passable &&
                          powerup.Diameter == 10 && powerup.Duration == 10 && powerup.PosX == 10 &&
                          powerup.PosY == 10);
        }
示例#4
0
        public void GetReboundStrategyTest(ArenaObjectType type)
        {
            PowerUpBuilder builder = new PowerUpBuilder();
            PowerUp        a       = builder.CreateObject() as PowerUp;

            a.SetTypeParams(type);
            var str = a.GetReboundStrategy();

            Assert.IsTrue(a.Type == type);
        }
示例#5
0
        protected override void Spawn()
        {
            var diameter = Params.RollWidth();
            var duration = Params.RollDuration();
            var pos      = Params.RollPosition();

            var powerupBuilder = new PowerUpBuilder().AddDiameter(diameter).AddDuration(duration).AddPos(pos);
            var powerup        = Factories[RandomNumber.NextInt(0, Factories.Length)].CreatePowerup(powerupBuilder);

            ArenaFacade.Instance.OnArenaObjectCreated(powerup);

            SpawnInterval = Params.RollInterval();
            LastSpawnTime = Time;
        }
        public void ReboundPositionTest()
        {
            NonPassablePowerupStrategy strategy = new NonPassablePowerupStrategy();
            Paddle  paddle     = new NormalPaddle(10, PaddleDataFactory.GetPaddleData(PaddleType.Normal));
            Vector2 vector     = new Vector2(10, 10);
            Vector2 normalised = new Vector2(1, 0);
            Ball    b          = Ball.CreateBall(0, BallType.Deadly, vector, 10, vector, 10);

            NonPassableArenaObjectFactory factory = new NonPassableArenaObjectFactory();
            PowerUpBuilder objBuilder             = new PowerUpBuilder().AddDuration(10).AddPosX(5).AddPosY(5).AddDiameter(10);

            Powerups.PowerUp obstacle = factory.CreatePowerup(objBuilder);

            Vector2 result = strategy.ReboundPosition(b, normalised, paddle, obstacle);

            Assert.IsFalse(vector == result);
        }