Example #1
0
        public _2Player()
        {
            InitializeComponent();

            // set the banner
            LevelBanner = Properties.Resources.two_player;

            base.CoreBuild();

            // add the obstacles
            engine.obstacles.Add(Obstacle.FromPicture(obstacle1, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle2, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle3, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle4, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle5, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle6, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle7, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle8, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle9, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle10, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle11, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle12, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle13, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle14, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle15, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle16, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle17, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle18, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle19, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle20, Color.Brown));
            engine.obstacles.Add(Obstacle.FromPicture(obstacle21, Color.Brown));
            // add the snakes
            snake = new ContinuousSnake(spawnPoint.Location.X, spawnPoint.Location.Y, this, new Vector(3, 90), 3, false);
            engine.AddSnake(snake);
            // add the red snake
            snakeRed = new ContinuousSnake(spawnPointRed.Location.X, spawnPointRed.Location.Y, this, new Vector(3, 90), 3, true);
            engine.AddSnake(snakeRed);

            // make the spawnpoints invisible
            spawnPoint.Visible    = false;
            spawnPointRed.Visible = false;

            // add the food spawners to a single spawn group
            FoodSpawnGroup spawnGroup = new FoodSpawnGroup(engine, 0.9);

            spawnGroup.Add(new AppleSpawnPad(applespawn1, 1, engine));
            spawnGroup.Add(new AppleSpawnPad(applespawn2, 1, engine));
            spawnGroup.Add(new AppleSpawnPad(applespawn3, 1, engine));
            spawnGroup.Add(new AppleSpawnPad(applespawn4, 1, engine));
            spawnGroup.Add(new AppleSpawnPad(applespawn5, 1, engine));
            spawnGroup.Add(new AppleSpawnPad(applespawn6, 1, engine));
            spawnGroup.Add(new AppleSpawnPad(applespawn7, 1, engine));
            spawnGroup.Add(new AppleSpawnPad(applespawn8, 1, engine));
            spawnGroup.Add(new AppleSpawnPad(applespawn9, 1, engine));
            // add it to the engine
            engine.AddFoodGroupSpawner(spawnGroup);
        }
Example #2
0
        // create the massive food spawn group
        void CreateFoodSpawnGroup()
        {
            FoodSpawnGroup foodSpawnGroup = new FoodSpawnGroup(engine, .8);

            foodSpawnGroup.Add(new DespawnAppleSpawnPad(applespawnpad1, 1, minFoodLife, maxFoodLife, this));
            foodSpawnGroup.Add(new DespawnAppleSpawnPad(applespawnpad2, 1, minFoodLife, maxFoodLife, this));
            foodSpawnGroup.Add(new DespawnAppleSpawnPad(applespawnpad3, 1, minFoodLife, maxFoodLife, this));
            foodSpawnGroup.Add(new DespawnAppleSpawnPad(applespawnpad4, 1, minFoodLife, maxFoodLife, this));
            foodSpawnGroup.Add(new DespawnAppleSpawnPad(applespawnpad5, 1, minFoodLife, maxFoodLife, this));
            foodSpawnGroup.Add(new DespawnAppleSpawnPad(applespawnpad6, 1, minFoodLife, maxFoodLife, this));
            //foodSpawnGroup.Add(new DespawnAppleSpawnPad(applespawnpad7, 1, minFoodLife, maxFoodLife, this));
            foodSpawnGroup.Add(new DespawnAppleSpawnPad(applespawnpad8, 1, minFoodLife, maxFoodLife, this));

            engine.AddFoodGroupSpawner(foodSpawnGroup);
        }
Example #3
0
        void AddSpawnPads() // setup spawn pads (register with game engine, set visibility to false)
        {
            engine.AddFoodSpawner(new AppleSpawnPad(applespawnpad1, 0.1, engine));
            applespawnpad1.SendToBack();
            applespawnpad1.Visible = false;

            foodSpawnGroup = new FoodSpawnGroup(engine, 1); // make a new spawn group with 100 percent spawn probability -
            // in the area
            AddSpawnGroupPad(applespawngroup1);
            AddSpawnGroupPad(applespawngroup2);
            AddSpawnGroupPad(applespawngroup3);
            AddSpawnGroupPad(applespawngroup4);
            AddSpawnGroupPad(applespawngroup5);
            AddSpawnGroupPad(applespawngroup6);
            AddSpawnGroupPad(applespawngroup7);
            AddSpawnGroupPad(applespawngroup8);
            // register the spawn group with the engine
            engine.AddFoodGroupSpawner(foodSpawnGroup);
        }
Example #4
0
        // create objects in the form (coins, obstacles)
        void gameConstruction()
        {
            // make the paused banner
            pausedBanner = new PictureBox
            {
                Image = Properties.Resources.paused,
                // resize box to fit image
                SizeMode = PictureBoxSizeMode.AutoSize
            };
            pausedBanner.Location = new Point((Width - pausedBanner.Width) / 2, (Height - pausedBanner.Height) / 2); // center the image
            // create the game engine
            engine = new GameEngine(this);
            // add existent coins
            engine.AddFood(new Apple(coin1, this));
            engine.AddFood(new Apple(coin2, this));
            engine.AddFood(new Apple(coin3, this));
            engine.AddFood(new Apple(coin4, this));
            engine.AddFood(new Apple(coin5, this));
            engine.AddFood(new Apple(coin6, this));
            engine.AddFood(new Apple(coin7, this));


            // add obstacles existent on the map
            engine.AddObstacle(Obstacle.FromPicture(obstacle1, Color.Brown));
            engine.AddObstacle(Obstacle.FromPicture(obstacle2, Color.Brown));
            engine.AddObstacle(Obstacle.FromPicture(obstacle3, Color.Brown));
            engine.AddObstacle(Obstacle.FromPicture(obstacle4, Color.Red));
            // create and add food spawner group
            FoodSpawnGroup group = new FoodSpawnGroup(engine);

            group.Add(new AppleSpawnPad(spawnPadPic2, 0.00001, engine));
            group.Add(new AppleSpawnPad(spawnPadPic, 0.00001, engine)); // add the second spawner
            engine.groupSpawners.Add(group);

            // Add enemies
            engine.AddStationary(new EnemyStationary(enemy1, 16, this));

            // make a new snake
            snake = new ContinuousSnake(Size.Width / 2, Size.Height / 2, this, new Vector(2, 90), 300);
            // add it to the engine
            engine.AddSnake(snake);
        }
Example #5
0
        public override void gameConstruction()
        {
            // set the banner for this level
            LevelBanner = Properties.Resources.Level_4;

            base.gameConstruction();

            AddObstacles();

            snake = new ContinuousSnake(spawnPoint.Location.X, spawnPoint.Location.Y, this, new Vector(3, 90), 3);
            engine.AddSnake(snake);                                               // register the snake

            engine.AddStationary(new EnemyStationary(guardian, threshold, this)); // create the guardian
            engine.gate_collider = gate_collider;                                 // register the gate collider

            spawnPoint.Visible = false;                                           // make the spawn point invisible

            // add followers
            follower = new EnemyFollower(follower1, 2, this);
            engine.followers.Add(follower);
            engine.followers.Add(new EnemyFollower(follower2, 2, this));
            engine.followers.Add(new EnemyFollower(follower3, 2, this));
            engine.followers.Add(new EnemyFollower(follower4, 2, this));

            // show threshold needed to beat the game
            txtSizeNeeded.Text = threshold.ToString();

            // add apple spawn pads to a single spawn group
            FoodSpawnGroup spawnGroup = new FoodSpawnGroup(engine, 0.6);

            spawnGroup.Add(new AppleSpawnPad(spawnpad1, 0.6, engine));
            spawnGroup.Add(new AppleSpawnPad(spawnpad2, 0.6, engine));
            spawnGroup.Add(new AppleSpawnPad(spawnpad3, 0.6, engine));
            spawnGroup.Add(new AppleSpawnPad(spawnpad4, 0.6, engine));
            spawnGroup.Add(new AppleSpawnPad(spawnpad5, 0.6, engine));
            spawnGroup.Add(new AppleSpawnPad(spawnpad6, 0.6, engine));
            spawnGroup.Add(new AppleSpawnPad(spawnpad7, 0.6, engine));
            spawnGroup.Add(new AppleSpawnPad(spawnpad8, 0.6, engine));
            spawnGroup.Add(new AppleSpawnPad(spawnpad9, 0.6, engine));
            engine.AddFoodGroupSpawner(spawnGroup);
        }
Example #6
0
 public void AddFoodGroupSpawner(FoodSpawnGroup spawnGroup)
 {
     groupSpawners.Add(spawnGroup);
 }