예제 #1
0
파일: UIHelper.cs 프로젝트: WeeirJoe/Joe
    public static void TweenPlay(GameObject go, int tweenGroup, Direction playDirection, bool resetOnPlay, EnableCondition ifDisabledOnPlay, DisableCondition disableWhenFinished, bool includeChildren)
    {
        if (!go.activeSelf)
        {
            // If the object is disabled, don't do anything
            if (ifDisabledOnPlay != EnableCondition.EnableThenPlay)
            {
                return;
            }

            // Enable the game object before tweening it
            NGUITools.SetActive(go, true);
        }

        // Gather the tweening components
        UITweener[] mTweens = includeChildren ? go.GetComponentsInChildren <UITweener>() : go.GetComponents <UITweener>();

        if (mTweens.Length == 0)
        {
            // No tweeners found -- should we disable the object?
            if (disableWhenFinished != DisableCondition.DoNotDisable)
            {
                NGUITools.SetActive(go, false);
            }
        }
        else
        {
            bool activated = false;

            // Run through all located tween components
            for (int i = 0, imax = mTweens.Length; i < imax; ++i)
            {
                UITweener tw = mTweens[i];

                // If the tweener's group matches, we can work with it
                if (tw.tweenGroup == tweenGroup)
                {
                    // Ensure that the game objects are enabled
                    if (!activated && !go.activeSelf)
                    {
                        activated = true;
                        NGUITools.SetActive(go, true);
                    }

                    // Toggle or activate the tween component
                    if (playDirection == Direction.Toggle)
                    {
                        tw.Toggle();
                    }
                    else if (playDirection == Direction.Forward)
                    {
                        tw.Play(true);
                    }
                    else
                    {
                        tw.Play(false);
                    }

                    if (resetOnPlay)
                    {
                        tw.Reset();
                    }
                }
            }
        }
    }
예제 #2
0
    /// <summary>
    /// Activate the tweeners.
    /// </summary>

    public void Play(bool forward)
    {
        mActive = 0;
        GameObject go = (tweenTarget == null) ? gameObject : tweenTarget;

        if (!NGUITools.GetActive(go))
        {
            // If the object is disabled, don't do anything
            if (ifDisabledOnPlay != EnableCondition.EnableThenPlay)
            {
                return;
            }

            // Enable the game object before tweening it
            NGUITools.SetActive(go, true);
        }

        // Gather the tweening components
        mTweens = includeChildren ? go.GetComponentsInChildren <UITweener>() : go.GetComponents <UITweener>();

        if (mTweens.Length == 0)
        {
            // No tweeners found -- should we disable the object?
            if (disableWhenFinished != DisableCondition.DoNotDisable)
            {
                NGUITools.SetActive(tweenTarget, false);
            }
        }
        else
        {
            bool activated = false;
            if (playDirection == Direction.Reverse)
            {
                forward = !forward;
            }

            // Run through all located tween components
            for (int i = 0, imax = mTweens.Length; i < imax; ++i)
            {
                UITweener tw = mTweens[i];

                // If the tweener's group matches, we can work with it
                if (tw.tweenGroup == tweenGroup)
                {
                    // Ensure that the game objects are enabled
                    if (!activated && !NGUITools.GetActive(go))
                    {
                        activated = true;
                        NGUITools.SetActive(go, true);
                    }

                    ++mActive;

                    // Toggle or activate the tween component
                    if (playDirection == Direction.Toggle)
                    {
                        // Listen for tween finished messages
                        EventDelegate.Add(tw.onFinished, OnFinished, true);
                        tw.Toggle();
                    }
                    else
                    {
                        if (resetOnPlay || (resetIfDisabled && !tw.enabled))
                        {
                            tw.Play(forward);
                            tw.ResetToBeginning();
                        }
                        // Listen for tween finished messages
                        EventDelegate.Add(tw.onFinished, OnFinished, true);
                        tw.Play(forward);
                    }
                }
            }
        }
    }
예제 #3
0
    public void Play(Boolean forward)
    {
        GameObject gameObject = (!(tweenTarget == null)) ? tweenTarget : this.gameObject;

        if (!NGUITools.GetActive(gameObject))
        {
            if (ifDisabledOnPlay != EnableCondition.EnableThenPlay)
            {
                return;
            }
            NGUITools.SetActive(gameObject, true);
        }
        mTweens = ((!includeChildren) ? gameObject.GetComponents <UITweener>() : gameObject.GetComponentsInChildren <UITweener>());
        if (mTweens.Length == 0)
        {
            if (disableWhenFinished != DisableCondition.DoNotDisable)
            {
                NGUITools.SetActive(tweenTarget, false);
            }
        }
        else
        {
            Boolean flag = false;
            if (playDirection == Direction.Reverse)
            {
                forward = !forward;
            }
            Int32 i   = 0;
            Int32 num = mTweens.Length;
            while (i < num)
            {
                UITweener uitweener = mTweens[i];
                if (uitweener.tweenGroup == tweenGroup)
                {
                    if (!flag && !NGUITools.GetActive(gameObject))
                    {
                        flag = true;
                        NGUITools.SetActive(gameObject, true);
                    }
                    if (playDirection == Direction.Toggle)
                    {
                        uitweener.Toggle();
                    }
                    else
                    {
                        uitweener.Play(forward);
                    }
                    if (resetOnPlay)
                    {
                        uitweener.Reset();
                    }
                    uitweener.onFinished = onFinished;
                    if (eventReceiver != null && !String.IsNullOrEmpty(callWhenFinished))
                    {
                        uitweener.eventReceiver    = eventReceiver;
                        uitweener.callWhenFinished = callWhenFinished;
                    }
                }
                i++;
            }
        }
    }
예제 #4
0
파일: UIButtonTween.cs 프로젝트: xaqq/tp1
    /// <summary>
    /// Activate the tweeners.
    /// </summary>

    public void Play(bool forward)
    {
        GameObject go = (tweenTarget == null) ? gameObject : tweenTarget;

        if (!go.active)
        {
            // If the object is disabled, don't do anything
            if (ifDisabledOnPlay != EnableCondition.EnableThenPlay)
            {
                return;
            }

            // Enable the game object before tweening it
            NGUITools.SetActive(go, true);
        }

        // Gather the tweening components
        mTweens = includeChildren ? go.GetComponentsInChildren <UITweener>() : go.GetComponents <UITweener>();

        if (mTweens.Length == 0)
        {
            // No tweeners found -- should we disable the object?
            if (disableWhenFinished != DisableCondition.DoNotDisable)
            {
                NGUITools.SetActive(tweenTarget, false);
            }
        }
        else
        {
            bool activated = false;
            if (playDirection == Direction.Reverse)
            {
                forward = !forward;
            }

            // Run through all located tween components
            for (int i = 0, imax = mTweens.Length; i < imax; ++i)
            {
                UITweener tw = mTweens[i];

                // If the tweener's group matches, we can work with it
                if (tw.tweenGroup == tweenGroup)
                {
                    // Ensure that the game objects are enabled
                    if (!activated && !go.active)
                    {
                        activated = true;
                        NGUITools.SetActive(go, true);
                    }

                    // Toggle or activate the tween component
                    if (playDirection == Direction.Toggle)
                    {
                        tw.Toggle();
                    }
                    else
                    {
                        tw.Play(forward);
                    }
                    if (resetOnPlay)
                    {
                        tw.Reset();
                    }

                    // Copy the event receiver
                    if (eventReceiver != null && !string.IsNullOrEmpty(callWhenFinished))
                    {
                        tw.eventReceiver    = eventReceiver;
                        tw.callWhenFinished = callWhenFinished;
                    }
                }
            }
        }
    }
예제 #5
0
    // Token: 0x0600027A RID: 634 RVA: 0x00019B34 File Offset: 0x00017D34
    public void Play(bool forward)
    {
        this.mActive = 0;
        GameObject gameObject = (this.tweenTarget == null) ? base.gameObject : this.tweenTarget;

        if (!NGUITools.GetActive(gameObject))
        {
            if (this.ifDisabledOnPlay != EnableCondition.EnableThenPlay)
            {
                return;
            }
            NGUITools.SetActive(gameObject, true);
        }
        this.mTweens = (this.includeChildren ? gameObject.GetComponentsInChildren <UITweener>() : gameObject.GetComponents <UITweener>());
        if (this.mTweens.Length == 0)
        {
            if (this.disableWhenFinished != DisableCondition.DoNotDisable)
            {
                NGUITools.SetActive(this.tweenTarget, false);
                return;
            }
        }
        else
        {
            bool flag = false;
            if (this.playDirection == AnimationOrTween.Direction.Reverse)
            {
                forward = !forward;
            }
            int i   = 0;
            int num = this.mTweens.Length;
            while (i < num)
            {
                UITweener uitweener = this.mTweens[i];
                if (uitweener.tweenGroup == this.tweenGroup)
                {
                    if (!flag && !NGUITools.GetActive(gameObject))
                    {
                        flag = true;
                        NGUITools.SetActive(gameObject, true);
                    }
                    this.mActive++;
                    if (this.playDirection == AnimationOrTween.Direction.Toggle)
                    {
                        EventDelegate.Add(uitweener.onFinished, new EventDelegate.Callback(this.OnFinished), true);
                        uitweener.Toggle();
                    }
                    else
                    {
                        if (this.resetOnPlay || (this.resetIfDisabled && !uitweener.enabled))
                        {
                            uitweener.Play(forward);
                            uitweener.ResetToBeginning();
                        }
                        EventDelegate.Add(uitweener.onFinished, new EventDelegate.Callback(this.OnFinished), true);
                        uitweener.Play(forward);
                    }
                }
                i++;
            }
        }
    }