public override bool CanExitBranch(OutTweenType outTweenType) { base.CanExitBranch(outTweenType); if (outTweenType == OutTweenType.Cancel) { _canStartGOUI = true; } return(!AlwaysOn && !_myGOUIModule.PointerOver); }
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); }
public virtual bool CanExitBranch(OutTweenType outTweenType) => _myBranch.GetStayOn() != IsActive.Yes || outTweenType != OutTweenType.MoveToChild;