Что эквивалентно GetKey в новой системе единого ввода? - PullRequest
2 голосов
/ 09 марта 2020

Запущено, выполнено и отменено, но что если я захочу определить, удерживаю ли я кнопку на геймпаде. В общем, как мне переписать это на геймпад с новой системой ввода.

private void Jump()
    {
        if (isTouchingGround == true && Input.GetKeyDown(KeyCode.Space))
        {
            isJumping = true;
            jumpTimeCounter = jumpTime;
            myRigidbody2D.velocity = new Vector2(myRigidbody2D.velocity.x, 1 * jumpSpeed);
        }

        if (Input.GetKey(KeyCode.Space) && isJumping == true)
        {
            if (jumpTimeCounter > 0)
            {
                myRigidbody2D.velocity = new Vector2(myRigidbody2D.velocity.x, 1 * jumpSpeed);
                jumpTimeCounter -= Time.deltaTime;
            }
            else
            {
                isJumping = false;
            }
        }
        if (Input.GetKeyUp(KeyCode.Space))
        {
            isJumping = false;
        }
    }

1 Ответ

1 голос
/ 09 марта 2020

Нет эквивалента! Вы должны привязать все входы к событиям, а затем обработать входы в методах, которые вы назначаете этим событиям. Это связано с тем, что новая система ввода напрямую не использует клавиши для работы на нескольких устройствах (клавиатура, контроллер, телефон, ...) без добавления дополнительного кода

См. здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...