Пример #1
0
    public override void OnCollision(BattleObject target)
    {
        PlayerStateManager playerManager = BattleStageManager.Instance.GetPlayerManager();

        switch (itemType)
        {
        case ItemType.PowerItem:
            bool hyperBonus = false;
            if (playerManager.ChangeFirePower(1))
            {
                playerManager.playerScore += 100;
            }
            else
            {
                hyperBonus = playerManager.AddScore(playerManager.maxPoint / 10, autoFlySpeed == itemLineFlySpeed);
            }
            playerManager.ChangeHyperPower(hyperBonus ? 10 : 5);
            break;

        case ItemType.ScoreItem:
            playerManager.AddScore(playerManager.maxPoint, autoFlySpeed == itemLineFlySpeed);
            break;

        case ItemType.MaxPointItem:
            playerManager.playerScore += 100;
            playerManager.maxPoint    += 10;
            break;

        case ItemType.LifeItem:
            playerManager.playerLife++;
            break;

        case ItemType.SpellItem:
            playerManager.playerSpell++;
            break;
        }
        destroy = true;
    }