Я пытаюсь создать базового c бесконечного бегуна, однако мой персонаж не прыгает, Код:
extends KinematicBody2D
#movement speed
const SPEED = 200
const GRAVITY = 10
const JUMP_POWER = -250
const FLOOR = Vector2(0, -1)
var velocity = Vector2()
func _physics_process(delta):
velocity.x = SPEED
if Input.is_action_just_pressed("ui-up"):
velocity.y = -250
print("jumped")
velocity.y += GRAVITY
velocity = move_and_slide(velocity, FLOOR)
Персонаж движется вправо непрерывно, как и положено, и гравитация работает нормально. Даже если я удалю условие: if Input.is_action_just_pressed("ui-up"):
, механизм прыжка c работает и персонаж плавает. Помимо этого, я удалил velocity.x = SPEED
, чтобы увидеть, была ли проблема в этом, а это не так. Я проверил карту ввода, чтобы убедиться, что пробел и клавиша со стрелкой вверх привязаны к «ui-up», и они оба. Никаких ошибок не происходит, поэтому единственное, о чем я могу думать, это то, что условие по какой-то причине никогда не истинно. Я действительно не понимаю, почему это не работает, и буду признателен за любую помощь.