使用SpriteKit&的3D Touch迅速

时间:2016-04-23 16:05:59

标签: swift sprite-kit touchesbegan touchesmoved 3dtouch

我的目标是让我的游戏玩家在他们按下的更难的情况下打开“大门”(打开大门可以让玩家更轻松地通过)。我尝试过使用force属性。首先,我尝试在touchesBegan中使用以下代码,但强制始终注册为0.0。然后,我将其移至touchesMoved,但这只需要第一次触摸,因此force非常低。这是代码:

var force: Float

for touch in touches {
    force = touch.force
}

let moveGate = SKAction.moveByX((50.0 * force), y: 0, duration: 5.0)
gate.runAction(moveGate)

使用该代码,您按下的门越难(在moveGate动作中)移动越远。但是,如果您轻轻按下,touchesMoved甚至不会被调用,或者即使 被调用,force也是一个较小的数字,因为触摸的开始有一个亮点力。当代码位于touchesBegan时,force始终为0.0

我一直在调整很多不同的东西,但我无法使用SpriteKit使3D Touch正常工作。这是我的问题:如何使用SpriteKit和Swift实现3D Touch,以便我可以基于单次触摸的力量来确定游戏玩法的某些方面?

有人知道怎么做吗?

非常感谢你的时间!

0 个答案:

没有答案