В настоящее время я использую WizardCharacter.physicsbody.velocity.dy и проверяю, равно ли оно 0. Я не хочу, чтобы персонаж мог прыгать в воздухе. Проблема, с которой я сталкиваюсь, заключается в том, что мой персонаж отдыхает, а он не двигается, а скорость у увеличивается от 0 до 1, не выполняя никаких действий для персонажа. Я не уверен, почему это происходит, я использую SpriteKit и SceneKit. Я предоставил свой код, а также картинку для распечатки консоли.
override func update(_ currentTime: TimeInterval) {
print("\(String(describing: wizardCharacter.physicsBody?.velocity.dy))")
cameraNode.position.x = wizardCharacter.position.x
if wizardCharacter.action(forKey: "wizardRun") == nil {
wizardCharacter.texture = SKTexture(imageNamed: "wizard_1_attack-b_001")
}
if upArrow.contains(pointTouched)
{
if wizardCharacter.physicsBody?.velocity.dy == 0 && isJumping == true {
upArrow.alpha = 0.5
jumpWizard(forTheKey: "jumped")
jumpWizardAnimation(fortheKey: "jumpedAnimation")
}
}
![Velocity of Character in y](https://i.stack.imgur.com/2ed96.png)