예제 #1
0
 public override bool CanExitBranch(OutTweenType outTweenType)
 {
     base.CanExitBranch(outTweenType);
     if (outTweenType == OutTweenType.Cancel)
     {
         _canStartGOUI = true;
     }
     return(!AlwaysOn && !_myGOUIModule.PointerOver);
 }
예제 #2
0
    public void StartBranchExitProcess(OutTweenType outTweenType, Action endOfTweenCallback = null)
    {
        if (!CanvasIsEnabled || DontExitBranch())
        {
            endOfTweenCallback?.Invoke();
            return;
        }

        if (WhenToMove == WhenToMove.AfterEndOfTween)
        {
            StartOutTween(endOfTweenCallback);
        }
        else
        {
            StartOutTween();
            endOfTweenCallback?.Invoke();
        }

        bool DontExitBranch() => !_branchTypeBaseClass.CanExitBranch(outTweenType);
    }
예제 #3
0
 public virtual bool CanExitBranch(OutTweenType outTweenType)
 => _myBranch.GetStayOn() != IsActive.Yes || outTweenType != OutTweenType.MoveToChild;