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); } }
// Compare public bool PropertiesEqual(BlockPlayer player) { if (I != player.I) { return(false); } if (J != player.J) { return(false); } if (Ammo != player.Ammo) { return(false); } if (Weapon != player.Weapon) { return(false); } return(true); }