Esempio n. 1
0
    // 190208 LifeBalance
    // Activate Item by UseItem method
    private void ActivateItem(ItemOptions itemOptionInfo)
    {
        //Debug.Log("Activate " + itemOptionIndex);
        //ItemType itemtype = itemOption[itemOptionNum].itemTypeEnum;

        if (itemOptionInfo.useSound != null)
        {
            SoundManager.Instance.ShortSpeaker(SoundManager.Speaker.Center, itemOptionInfo.useSound);
        }


        // 아이템 유지시간 아이콘 코드
        if (itemOptionInfo.active == false)
        {
            if (itemOptionInfo.usingItemCreate == true)
            {
                if (itemOptionInfo.usingItem == null)
                {
                    itemOptionInfo.usingItem = Instantiate(itemUseCheckBlockBox, itemUseCheckBlock.transform);
                    itemOptionInfo.usingItem.SetItem(itemOptionInfo.duration, itemOptionInfo.sprite);
                }
            }
        }
        if (itemOptionInfo.active == true && (itemOptionInfo.typeEnum != ItemType.GetCredit))
        {
            if (itemOptionInfo.usingItemCreate == true)
            {
                if (itemOptionInfo.usingItem == null)
                {
                    itemOptionInfo.usingItem = Instantiate(itemUseCheckBlockBox, itemUseCheckBlock.transform);
                    itemOptionInfo.usingItem.SetItem(itemOptionInfo.duration, itemOptionInfo.sprite);
                }
                else
                {
                    itemOptionInfo.usingItem.ResetTimer();
                }
            }
        }



        switch (itemOptionInfo.typeEnum)
        {
        case ItemType.GetCredit:
            // 크레딧 UI 를 따로 제작할 것
            RefreshCredit((int)itemOptionInfo.duration);
            break;

        case ItemType.ScoreBooster:
            itemOptionInfo.active      = true;
            itemOptionInfo.activeTimer = 0;
            igsScoreMultifly           = (int)itemOptionInfo.magnification;
            //Debug.Log(itemOptionInfo.typeEnum + " : " + itemOptionInfo.active);
            break;

        case ItemType.BigShield:
            itemOptionInfo.active      = true;
            itemOptionInfo.activeTimer = 0;
            playerScript.OP_BigShield(itemOptionInfo.magnification * playerScript.op_shieldOriginalSize);
            //Debug.Log(itemOptionInfo.typeEnum + " : " + itemOptionInfo.active);
            break;

        case ItemType.ShieldFullCharge:
            itemOptionInfo.active      = true;
            itemOptionInfo.activeTimer = 0;
            playerScript.OP_ShieldFullCharge(true);
            playerScript.OP_BigShield(itemOptionInfo.magnification * playerScript.op_shieldOriginalSize);
            //Debug.Log(itemOptionInfo.typeEnum + " : " + itemOptionInfo.active);
            break;

        case ItemType.ShieldRecovery:
            itemOptionInfo.active      = true;
            itemOptionInfo.activeTimer = 0;
            playerScript.OP_ShieldRecovery(itemOptionInfo.duration);
            //Debug.Log(itemOptionInfo.typeEnum + " : " + itemOptionInfo.active);
            break;

        case ItemType.Bomb:
            //Debug.Log("YOU ACTIVATE BOMB ! ! !");
            CBUseItemBomb();
            break;

        case ItemType.PowerBooster:
            itemOptionInfo.active      = true;
            itemOptionInfo.activeTimer = 0;
            playerScript.OP_PowerBooster(itemOptionInfo.magnification);
            playerScript.OP_PowerBoosterDamage(2.0f);
            //Debug.Log(itemOptionInfo.typeEnum + " : " + itemOptionInfo.active);
            break;
        }
    }