
Remake classic arcade games with Swift and SpriteKit as part of the cartridge classics series, defending bases against wave-based bombs and missiles from scratch.
This section will contain all the art / sound assets used in the course as well as all the Xcode Projects.
Learn to map game elements on a blackboard and design classes for bases, turret, missiles, drone, and bombs, with parallax backgrounds, physics, health states, and particle effects.
Explore creating a universal intro image for a SpriteKit game by resizing an intro screen asset for iPhone and iPad, using SKSpriteNode and device-specific slots.
Learn how to create and animate an SKLabelNode in SpriteKit, import and configure a custom font in Xcode and Info.plist, and implement a looping SKAction sequence that fades the label.
Discover how to declare and access intro scene elements in Swift by moving the instruction label and intro image to top-level variables and using SKAction to remove a child.
Create an intro scene in Sprite Kit to serve as a splash screen, replacing the game scene. Transition to the game scene with an SKTransition reveal, direction down, one second.
Learn to create and position the player base and ground in a SpriteKit scene, configure physics bodies and category bit masks, and align ground height for iPhone and iPad.
Implement a rotation gesture recognizer in SpriteKit to rotate a turret around its base and move a target using sine and cosine, while tracking rotation offset and a max rotation.
Implement a tap gesture to fire, create a bullet sprite with a physics body, and apply a forward force from the turret while configuring gravity and rotation.
Create firing particles for the gun turret using a sprite kit emitter, adjust birth rate, lifetime, and position range, and pass location and force to emitters for proper direction.
Set up parallax backgrounds in Swift and SpriteKit by layering stars and a moon, then move them with SK actions in looping sequences for a seamless, multi-speed background.
Learn how to add background music and sound effects in a SpriteKit game using AVFoundation for background audio and SKAction for in-game sounds, including asset management and looping.
Master a SpriteKit game loop by implementing a start game function, a game is active flag, and a timed clear of unseen bullets and enemy missiles.
Create an enemy missile class in SpriteKit with Swift, initialize its sprite and physics body, and launch missiles repeatedly at random x positions to test creation.
Animate the enemy missile using a texture atlas, load frame textures into an array, and loop them with a forever SKAction; add a fire particle emitter for effects.
Explore arcing enemy missiles with random horizontal variance, gravity, and comet trail dots in SpriteKit, using dot sprites, start dot sequences, and SKAction to create fading, growing trails.
Build a drone class with a sprite node, animate from a texture atlas, move across the screen, and drop bombs at randomized intervals toward an active base.
Set up base objects and enemy bombs by building a CGPoint base array, placing bases near the ground, and managing bomb collision, health, and glass particle effects.
Implement the game over loop by adding a game over test, count destroyed bases, and trigger game over when conditions are met, while identifying the active base.
Learn to create explosion effects for missiles using sprite nodes, images, and actions, and implement hit tracking with damage points to determine when to destroy the enemy missile.
Configure the physics contact listener and handle did begin contact between bullets and enemy missiles. Explode at the collision point and remove involved nodes, reusing code for both collision orders.
Finish the contact listener for Missile Commando by handling collisions between bullets, enemy bombs, and the player base; create explosions, remove nodes, play sounds, and apply damage using damage points.
Implement game over handling by halting actions, exploding all missiles, reviving bases, and restarting the game to reset levels and gravity parameters.
Explore wave stats and leveling mechanics by configuring level variables, drone speed, missile rate, and attack counters, while updating on-screen stats labels and triggering level ups.
Set up a health meter with textures, initialize health, and handle loss to trigger game over and resets. Add scoring for missiles and ricochets, with success and fail sounds.
*****INCLUDES UPDATES SOURCE PROJECTS FOR SWIFT 3
In this Swift and Sprite Kit video tutorial series we will wield our mighty modern programming skills to re-make a classic arcade game. Along the way, we'll also add modern graphics and some new features so the finished product is a more enjoyable app using today's fancier technology. Topics taught includes…