O'Reilly logo

Game Development with Swift by Stephen Haney

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Adding contact events to our game

Now that you are familiar with SpriteKit's physics concepts, we can head into Xcode to implement physics categories and contact logic for our penguin game. We will start by adding in our physics categories.

Setting up the physics categories

To create our physics categories, open your GameScene.swift file and enter the following code at the bottom, completely outside the GameScene class:

enum PhysicsCategory:UInt32 {
    case penguin = 1
    case damagedPenguin = 2
    case ground = 4
    case enemy = 8
    case coin = 16
    case powerup = 32
}

Notice how we double each succeeding value, as in our previous example. We are also creating an extra category for our penguin to use after he takes damage. We will use the damagedPenguin physics ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required