gpt4 book ai didi

ios - Swift:如何让我游戏中的角色只有在落地后才能跳跃?

转载 作者:搜寻专家 更新时间:2023-10-31 19:36:44 26 4
gpt4 key购买 nike

我正在开发一款游戏,让我的角色从一个陆地跳到另一个陆地。我已经把所有事情都做好了,除了我剩下的问题是如果你一直点击屏幕他可以一直跳下去。我想要它,所以他必须先着地才能再次跳跃。

import SpriteKit
import GameplayKit

class GameScene: SKScene, SKPhysicsContactDelegate {
struct PhysicsCatagory {
static let Knight : UInt32 = 0x1 << 1
static let land : UInt32 = 0x1 << 2
}

var Knight = SKSpriteNode()
var land = SKSpriteNode(imageNamed: "CJLand4")

这是我目前让他跳起来的代码:

Knight.physicsBody?.velocity = CGVector(dx: 0, dy: 0)
Knight.physicsBody?.applyImpulse(CGVector(dx: 0, dy: 325))

我在 touchesBegan 下有这个,它增加了引力,一时冲动它可以让他跳跃。但我只希望他每次落地时都能跳一次。如果可以,请帮忙。

最佳答案

您可以检查垂直速度是否为 0,并且 Knight 只有在落地时才会跳跃。这实际上取决于您要寻找的跳跃类型。

if Knight.physicsBody?.velocity.y == 0 { Jump() }

关于ios - Swift:如何让我游戏中的角色只有在落地后才能跳跃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45290346/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com