Hi i need my player (sprite) to interact with my ground. Without the didbegincontact function override and result in game over, i only want game over when player collides with posts. Please find the code below.
class GameScene: SKScene, SKPhysicsContactDelegate {
override func didMoveToView(view: SKView) {
self.physicsWorld.contactDelegate = self
let playerGroup: UInt32 = 1
let PostGroup: UInt32 = 2
let groundGroup: UInt32 = 3
var gameOver = "1"
//player
player.physicsBody?.categoryBitMask = playerGroup
player.physicsBody?.collisionBitMask = PostGroup
player.physicsBody?.contactTestBitMask = postGroup
//ground.
ground.physicsBody?.categoryBitMask = groundGroup
//post.
post.physicsBody?.categoryBitMask = PostGroup
post.physicsBody?.contactTestBitMask = playerGroup
func didBeginContact(contact: SKPhysicsContact!) {
println("contact")
println("gameOver")
gameOver = "1"
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
if (gameOver == "0") {
player.physicsBody?.velocity = CGVectorMake (0, 0)
player.physicsBody?.applyImpulse(CGVectorMake(0, 25))