Exemple #1
0
    public BlockWorld(int playerNum, World world)
    {
        ground = new bool[World.BlocksWidth, World.BlocksHeight];
        for (int i = 0; i < World.BlocksWidth; i++)
        {
            for (int j = 0; j < World.BlocksHeight; j++)
            {
                ground[i, j] = world.CheckGroundByIndex(i, j);
            }
        }

        justCollectedAmmo = false;

        // Turn player to BlockPlayer
        Player = new BlockPlayer(playerNum == 1 ? world.Player1 : world.Player2);

        // Turn powerups to BlockPowerups
        Powerups = new List <BlockPowerup>();
        for (int i = 0; i < world.NumPowerups; i++)
        {
            World.Powerup powerup = world.GetPowerup(i);

            // Conditionally exclude speed and gravity
            if (excludeSpeedGrav && powerup.Type == PowerupType.Gravity ||
                powerup.Type == PowerupType.Speed)
            {
                continue;
            }

            BlockPowerup blockPowerup = new BlockPowerup(powerup);
            blockPowerup.ProjectDownwards(this);
            Powerups.Add(blockPowerup);
        }
    }
Exemple #2
0
 // Compare
 public bool PropertiesEqual(BlockPowerup powerup)
 {
     if (X != powerup.X)
     {
         return(false);
     }
     if (Y != powerup.Y)
     {
         return(false);
     }
     if (Weapon != powerup.Weapon)
     {
         return(false);
     }
     if (Type != powerup.Type)
     {
         return(false);
     }
     if (isFalling != powerup.isFalling)
     {
         return(false);
     }
     return(true);
 }