static void ShrinkPaddle(Player player, applyPowerUpInfo power) //Decrease opponents paddle by scaleConstant when player collects ShrinkPaddle powerup
 {
     if (player.Paddle.transform.localScale.x == 1f)             //Decrease size of paddle ONLY if paddle is size 1
     {
         AdjustPaddleSize(player, -power.scaleAmount);
     }
     if (player.Paddle.transform.localScale.x > 1f)        //reset size of paddle if paddle was grown
     {
         ResetPaddleToOne(player);
     }
 }
 static void GrowPaddle(Player player, applyPowerUpInfo power) //Grow paddle by scaleConstant when the player collects the GrowPaddle powerup
 {
     if (player.Paddle.transform.localScale.x == 1f)           //Increase size of paddle ONLY if paddle is size 1
     {
         AdjustPaddleSize(player, power.scaleAmount);
     }
     if (player.Paddle.transform.localScale.x < 1f)        //reset size of paddle if paddle was shrunken
     {
         ResetPaddleToOne(player);
     }
 }
    static void AddLine(Player player, applyPowerUpInfo power)
    {
        GameManager GMref = (GameManager)GameObject.Find("Game Manager").GetComponent <GameManager>();

        int linesToAdd  = UnityEngine.Random.Range(1, power.addLineUpperBound);
        int bricksToAdd = (linesToAdd * GMref.bricksPerLine) - ((int)(GMref.brickValue / GMref.scorePerBrick));

        player.pendingBricks += bricksToAdd;

        GameObject.Find("Game Manager").SendMessage("sendBricks", player.playerNumber);
    }
    void applyPowerUp(applyPowerUpInfo info)
    {
        Player player;

        if (info.powerUpKey == PowerUpKey.ShrinkPaddle)         //Players to act upon for ShrinkPaddle Powerup.
        {
            player = info.player == 1 ? player2 : player1;
        }
        else        //Otherwise, keep them in sync
        {
            player = info.player == 1 ? player1 : player2;
        }

        Power.Apply(info, player);
    }
    public static void Apply(applyPowerUpInfo power, Player player)
    {
        switch (power.powerUpKey)
        {
        case PowerUpKey.GrowPaddle:
            GrowPaddle(player, power);
            break;

        case PowerUpKey.ShrinkPaddle:
            ShrinkPaddle(player, power);
            break;

        case PowerUpKey.MultiBall:
            MultiBall(player); if (UnityEngine.Random.value <= 0.5)
            {
                MultiBall(player);
            }
            break;

        case PowerUpKey.AddLine:
            AddLine(player, power);
            break;
        }
    }