用物理学移动SKSpriteNodes碰撞行为

时间:2016-01-20 04:48:40

标签: sprite-kit xcode7 skphysicsbody skscene

我正在制作一个游戏,其中玩家通过向玩家施加力来移动世界(玩家是应该向左移动还是向右移动由更新方法中的xVelocity值决定 - 或者是200或200)

override func update(currentTime: NSTimeInterval) {
    player?.physicsBody?.applyForce(CGVectorMake(xVelocity, 0))
    enemy?.physicsBody?.applyForce(CGVectorMake(enemyxVelocity, 0))
}

我也有一些移动的敌人,也在x轴上使用了力量。当敌人和玩家发生碰撞时,敌人会被击退,玩家可以继续前进,但这与我想要的相反。我希望敌人在动量方面更加强大,并且实际上将玩家推开。

我正在使用Xcode的场景编辑器来实现这一点,我不确定物理体属性的哪些部分与我相关的效果是什么?

1 个答案:

答案 0 :(得分:1)

尝试调整游戏中每个角色的质量

https://developer.apple.com/library/ios/documentation/SpriteKit/Reference/SKPhysicsBody_Ref/index.html#//apple_ref/occ/instp/SKPhysicsBody/mass

“质量属性决定了力量如何影响身体,以及身体在发生碰撞时的动量。”