Exemple #1
0
    public void Update()
    {
        // Dispatch Up
        foreach (KeyCode keyCode in inputOptions)
        {
            InputSignal.Key key = InputSignal.Key.None;

            switch (keyCode)
            {
            case KeyCode.UpArrow:
                key = InputSignal.Key.Up;
                break;

            case KeyCode.DownArrow:
                key = InputSignal.Key.Down;
                break;

            case KeyCode.Space:
                key = InputSignal.Key.Action;
                break;
            }

            if (Input.GetKeyDown(keyCode))
            {
                InputSignal.Dispatch(key, InputSignal.State.Down);
            }

            if (Input.GetKeyUp(keyCode))
            {
                InputSignal.Dispatch(key, InputSignal.State.Up);
            }
        }
    }
Exemple #2
0
    private void OnInput(InputSignal.Key key, InputSignal.State state)
    {
        if (state == InputSignal.State.Down)
        {
            if (key == InputSignal.Key.Up && !GameModel.IsDead())
            {
                View.MoveUp();
            }
            else if (key == InputSignal.Key.Down && !GameModel.IsDead())
            {
                View.MoveDown();
            }

            if (key == InputSignal.Key.Action && !GameModel.IsDead())
            {
                View.Attack();
            }
        }
        else if (state == InputSignal.State.Up)
        {
            if ((key == InputSignal.Key.Up || key == InputSignal.Key.Down))
            {
                View.ResetMove();
            }
        }
    }