private void Awake()
 {
     State.OnTransitionIn  += (_) => OnTransitionIn.Invoke();
     State.OnTransitionOut += (_) => OnTransitionOut.Invoke();
     State.OnEntered       += (_) => OnEntered.Invoke();
     State.OnExited        += (_) => OnExited.Invoke();
 }
    public void Ini()
    {
        if (Initialize)
        {
            return;
        }
        Initialize = true;
        _menu      = GetComponent <Menu>();

        if (DisableOnEnter)
        {
            _menu.onEnter.AddListener(() => _menu.SetActiveGO(false));
        }

        if (OnEntered)
        {
            _menu.waitEnterAnimationEnd = true;
            OnEntered.RegisterListener(this);
        }
        if (OnEnter)
        {
            _menu.onEnter.AddListener(OnEnter.Raise);
        }

        if (OnLeft)
        {
            OnLeft.RegisterListener(this);
            _menu.waitLeaveAnimationEnd = true;
        }
        if (OnLeave)
        {
            _menu.onLeave.AddListener(OnLeave.Raise);
        }
    }
Exemplo n.º 3
0
        protected async Task HandleEnteredAsync(IReference refback, bool appeared)
        {
            var styles = new Dictionary <string, object>
            {
                { "height", "auto" }
            };

            await DomHelpers.SetStyleAsync(refback.Current, styles, trigger : true);

            OnEntered?.Invoke(refback, appeared);
        }
 private void OnDestroy()
 {
     if (OnEntered)
     {
         OnEntered.UnregisterListener(this);
     }
     if (OnLeft)
     {
         OnLeft.UnregisterListener(this);
     }
 }
Exemplo n.º 5
0
        public void DrawMenu()
        {
            OnEntered?.Invoke(this);
            MenuLogicHelper.CopyEvents(this);
            _needsRedraw = true;
            _open        = true;

            while (_open)
            {
                if (!_needsRedraw)
                {
                    //Only check the hashes if we are not already redrawing
                    _needsRedraw = HashHelper.NeedsToRedraw(_lastDrawnHash, this);
                }

                if (_needsRedraw)
                {
                    Console.Clear();
                    MenuLogicHelper.DrawContents(this);

                    _needsRedraw   = false;
                    _lastDrawnHash = HashHelper.MakeHash(this);
                }

                if (!Console.KeyAvailable)
                {
                    continue;
                }

                var key = Console.ReadKey(true);
                if (key.Key == ConsoleKey.Escape)
                {
                    break;
                }

                MenuLogicHelper.ProcessKey(this, key);
                _needsRedraw = true;
            }

            OnExited?.Invoke(this);
        }
Exemplo n.º 6
0
 protected virtual async Task FireEntered(IEnterContext context)
 {
     await OnEntered.InvokeAsync(context);
 }
Exemplo n.º 7
0
 protected void HandleEntered(IReference refback, bool appeared)
 {
     OnEntered?.Invoke(refback, appeared);
 }
Exemplo n.º 8
0
 protected virtual void RaiseOnEntered()
 {
     OnEntered?.Invoke();
 }
Exemplo n.º 9
0
 public void Enter()
 {
     OnEntered?.Invoke();
 }
Exemplo n.º 10
0
 public void Insert(T pieceToMove)
 {
     InsertInternal(pieceToMove);
     OnEntered?.Invoke(pieceToMove);
 }
Exemplo n.º 11
0
 private void OnTriggerEnter2D(Collider2D other)
 {
     OnEntered?.Invoke();
 }
Exemplo n.º 12
0
 public IEnumerable <EnterExitHandler> GetEnteredHandlers() => OnEntered?.GetInvocationList().Cast <EnterExitHandler>();