void Fade(TransitionConfig cfg, LocalTransformInfo defaultTransform)
    {
        var fadeFrom = cfg.begin;
        var fadeTo   = cfg.end;

        CachedCanvasGroup.alpha = fadeFrom;
        LeanTween.alphaCanvas(CachedCanvasGroup, fadeTo, cfg.duration).setEase(cfg.easing);
    }
 public void Editor_MakeHideRevertTranstionsWithShow()
 {
     hideTranstions = new TransitionConfig[showTransitions.Length];
     for (int n = 0; n < hideTranstions.Length; n++)
     {
         var showCfg = showTransitions[n];
         hideTranstions[n] = TransitionConfig.CloneAndRevertBeginEnd(showCfg);
     }
 }
    void RotateZ(TransitionConfig cfg, LocalTransformInfo defaultTransform)
    {
        var beginAngle = defaultTransform.eulerRotation;

        beginAngle.z += cfg.begin;

        var endAngle = defaultTransform.eulerRotation;

        endAngle.z += cfg.end;

        transform.localEulerAngles = beginAngle;
        LeanTween.rotateLocal(gameObject, endAngle, cfg.duration).setEase(cfg.easing);
    }
    void MoveY(TransitionConfig cfg, LocalTransformInfo defaultTransform)
    {
        var beginPoint = defaultTransform.position;

        beginPoint.y += cfg.begin;

        var endPoint = defaultTransform.position;

        endPoint.y += cfg.end;

        transform.localPosition = beginPoint;
        LeanTween.moveLocal(gameObject, endPoint, cfg.duration).setEase(cfg.easing);
    }
        public static TransitionConfig CloneAndRevertBeginEnd(TransitionConfig source)
        {
            if (source == null)
            {
                throw new NullReferenceException();
            }
            var clone = new TransitionConfig();

            clone.transitionType = source.transitionType;
            clone.begin          = source.end;
            clone.end            = source.begin;
            clone.duration       = source.duration;
            clone.easing         = source.easing;
            return(clone);
        }
    void Zoom(TransitionConfig cfg, LocalTransformInfo defaultTransform)
    {
        var beginScale = defaultTransform.scale;

        beginScale.x = cfg.begin;
        beginScale.y = cfg.begin;

        var endScale = defaultTransform.scale;

        endScale.x = cfg.end;
        endScale.y = cfg.end;

        transform.localScale = beginScale;
        LeanTween.scale(gameObject, endScale, cfg.duration).setEase(cfg.easing);
    }
        public static TransitionConfig AddAction(this TransitionConfig self, Func <RunContext, bool> func, params ResultActionConfig[] actions)
        {
            var r = self.RuleActions.FirstOrDefault(c => c.WhenRule == func);

            if (r == null)
            {
                r = new ResultRuleConfig()
                {
                    WhenRule = func,
                };
                self.RuleActions.Add(r);
            }
            r.Actions.AddRange(actions);
            return(self);
        }
Beispiel #8
0
        /// <summary>
        /// switch_state :
        ///     (WHEN rule_conditions)?
        ///     (
        ///           execute2* SWITCH key
        ///         | execute2+
        ///     )
        ///     ;
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override object VisitSwitch_state([NotNull] WorkflowParser.Switch_stateContext context)
        {
            var t = new TransitionConfig()
            {
            };

            if (context.WHEN() != null)
            {
                var condition = context.rule_conditions();
                t.WhenRuleText     = condition.GetText();
                t.WhenRulePosition = new RuleSpan()
                {
                    StartLine   = condition.Start.Line,
                    StartColumn = condition.Start.Column,
                    StartIndex  = condition.Start.StartIndex,

                    StopLine   = condition.Stop.Line,
                    StopColumn = condition.Stop.Column,
                    StopIndex  = condition.Stop.StopIndex,
                };
                var compilation = ((Func <RunContext, bool>, string))Compile((ExpressionModel)VisitRule_conditions(condition));
                t.WhenRule     = compilation.Item1;
                t.WhenRuleCode = compilation.Item2;
            }

            var executes = context.execute2();

            if (executes != null)
            {
                foreach (var execute in executes)
                {
                    t.RuleActions.Add((ResultRuleConfig)VisitExecute2(execute));
                }
            }

            if (context.SWITCH() != null)
            {
                t.TargetStateName = (string)VisitKey(context.key());
            }

            return(t);
        }
 public static IncomingEventConfig AddTransition(this IncomingEventConfig self, TransitionConfig t)
 {
     self.Transitions.Add(t);
     return(self);
 }