Beispiel #1
0
    //========== Func : Default ==========//
    private void Awake()
    {
        btn      = GetComponent <Button>();
        targetTF = target.GetComponent <RectTransform>();
        // Create & Set Material Instance
        targetMaterial  = Instantiate(target.material);
        target.material = targetMaterial;
        //
        stageNum = (int)Char.GetNumericValue(MyUtility.GetLastChar(transform.parent.name));
        diffStr  = transform.parent.parent.name;
        switch (diffStr)
        {
        case "NORMAL":
            diff = Difficulty.NORMAL;
            break;

        case "HARD":
            diff = Difficulty.HARD;
            break;

        default:
            break;
        }
        //
        //texture_InActive = SpriteUtility.GetSpriteTexture(sprite_InActive, false);
        //texture_Normal = SpriteUtility.GetSpriteTexture(sprite_Normal, false);
    }
Beispiel #2
0
    //========== Func : Call From DataManager ==========//
    public void Activate(bool tween = true)
    {
        if (btn.interactable == true)
        {
            return;
        }
        // Activate Sequance
        if (tween == true)
        {
            Tween tween_Rotate          = targetTF.DORotateQuaternion(endRot, tweenTime_Activate).SetEase(Ease.InCubic);
            Tween tween_TextureToTarget = targetMaterial.DOFloat(1.0f, hashFactor, tweenTime_Activate).SetEase(Ease.InCubic);
            Tween tween_TextureToMain   = targetMaterial.DOFloat(0.0f, hashFactor, tweenTime_Activate).SetEase(Ease.InCubic);
            //
            Sequence ActivateSequence = DOTween.Sequence()
                                        .Append(tween_Rotate)
                                        .Join(tween_TextureToTarget)
                                        .AppendCallback(() => { unlockEffect.SetActive(true); })
                                        .AppendCallback(() => { targetMaterial.SetTexture(hashDiffuse_1, texture_UnLocked); })
                                        .Append(tween_TextureToMain)
                                        .AppendCallback(() => { target.material = null; })
                                        .AppendCallback(() => { TransitionControl.instance.isActivating = false; })
                                        .AppendCallback(() => { btn.interactable = true; })
            ;
        }
        else
        {
            targetTF.rotation = endRot;
            targetMaterial.SetTexture(hashDiffuse_1, texture_UnLocked);
            target.material = null;
            //
            btn.interactable = true;
        }
        // Set nameCard Text
        char   c        = MyUtility.GetLastChar(transform.parent.name);
        string stageNum = "";

        if (c == '0')
        {
            stageNum = "Infinite";
            nameCard.GetComponentInChildren <TextMeshProUGUI>().text
                = stageNum;
        }
        else
        {
            stageNum = c.ToString();
            nameCard.GetComponentInChildren <TextMeshProUGUI>().text
                = "Stage " + stageNum;
        }
    }