Итак, я работаю над этим 2D бегуном и использую функцию transform.position, но я заметил, что из-за этого гравитация в Unity не работает.Я все еще хочу, чтобы это сработало, поэтому я настроил эту искусственную гравитацию (см. В сценарии), однако, если вы удерживаете кнопку W нажатой, человек может продолжать летать вечно.Я только хочу, чтобы человек мог быть в воздухе на секунду.Как мне это сделать?
if(Input.GetKeyDown(KeyCode.W) && transform.position.y < 0.1)
{
target_position = new Vector2(transform.position.x, transform.position.y + jump_force);
}
//gravity
if (Input.GetKeyUp(KeyCode.W))
{
target_position = new Vector2(transform.position.x, transform.position.y - jump_force);
}