示例#1
0
    public void ShowFullArt(
        Script_FullArt fullArt,
        FadeSpeeds fadeInSpeed,
        Action cb,
        FullArtState _state
        )
    {
        state = _state;

        HandleFullArtSortingOrder();

        fullArtCanvasGroup.alpha = 1;
        fullArtCanvasGroup.gameObject.SetActive(true);

        fullArt.Setup();
        fullArt.gameObject.SetActive(true);

        // fade in
        activeFullArt = fullArt;
        fullArt.FadeIn(fadeInSpeed, cb);

        // fade in global bg
        Script_FullArtBgCanvasGroup bg = bgs[(int)fullArt.bg];

        bg.gameObject.SetActive(true);
        bg.FadeIn(fadeInSpeed, null, bgAlpha);
    }
示例#2
0
    public void Setup()
    {
        if (Control == null)
        {
            Control = this;
        }
        else if (Control != this)
        {
            Destroy(this.gameObject);
        }

        Hide(FadeSpeeds.None, null);
        fullArtBgCanvasGroup.gameObject.SetActive(true);

        foreach (Script_FullArtBgCanvasGroup bg in bgs)
        {
            bg.gameObject.SetActive(true);
            bg.InitializeState();
        }

        foreach (Transform t in fullArtParent.GetComponentsInChildren <Transform>(true))
        {
            Script_FullArt fa = t.GetComponent <Script_FullArt>();
            if (fa != null)
            {
                fa.gameObject.SetActive(false);
            }
        }

        foreach (Transform t in fullArtParentsToSetActive)
        {
            t.gameObject.SetActive(true);
        }
    }
示例#3
0
    /// <summary>
    /// fade out the designated prefab canvas
    /// this ends the viewing state,
    /// use TransitionOutFullArt instead for transitioning to next
    /// </summary>
    public void HideFullArt(
        Script_FullArt fullArt,
        FadeSpeeds fadeOutSpeed,
        Action cb
        )
    {
        Debug.Log("HideFullArt() called");
        // fade out global bg
        Script_FullArtBgCanvasGroup bg = bgs[(int)fullArt.bg];

        bg.FadeOut(fadeOutSpeed, () => bg.gameObject.SetActive(false));

        fullArt.FadeOut(fadeOutSpeed, () =>
        {
            fullArtCanvasGroup.alpha = 0f;
            fullArtCanvasGroup.gameObject.SetActive(false);

            if (Script_Game.Game.GetPlayer().State == Const_States_Player.Viewing)
            {
                Script_Game.Game.GetPlayer().SetIsInteract();
            }

            activeFullArt = null;
            if (cb != null)
            {
                cb();
            }
        });
    }
示例#4
0
    /// <summary>
    /// Use to prepare full art for right entrance
    /// </summary>
    public void EntranceFromRight(
        Script_FullArt fullArt
        )
    {
        /// First have gameObject active because state machine resets when is turned on/off
        /// but still hidden
        fullArtCanvasGroup.alpha = 0f;
        fullArtCanvasGroup.gameObject.SetActive(true);
        fullArt.gameObject.SetActive(true);

        fullArt.EntranceFromRight(fullArtCanvasGroup);
    }
示例#5
0
 public void TransitionOutFullArt(
     Script_FullArt fullArt,
     FadeSpeeds fadeOutSpeed,
     Action cb
     )
 {
     fullArt.FadeOut(fadeOutSpeed, () =>
     {
         if (cb != null)
         {
             cb();
         }
     });
 }