Tint Plane Red When it Crashes
Enroll in Course to Unlock
| Introduction |
| Nodes |
| A Closer Look At Nodes Part 1 |
| A Closer Look At Nodes Part 2 |
| Adding Images to Projects |
| Coordinates |
| A Closer Look at Anchor Points |
| Game Loops |
| Overview of Actions |
| Diagnostics |
| Space Cannon |
| Review: Space Cannon Setup |
| Add shoot method |
| Working With Angles |
| Data Types |
| Add physics body |
| Shoot Method Review |
| Clean up |
| Using Breakpoints |
| Review of Physics Body Basics |
| Timing |
| Review of Game Loop |
| Adding Edges to the scene |
| Challenge: Ball Challenge |
| Challenge: Ball Challenge: Solution Part 1 |
| Challenge: Ball Challenge: Solution Part 2 |
| Challenge: Ball Challenge: Solution Part 3 |
| Adding randomness |
| Adding Halos |
| Review - Random in Range and Spawn Halo Action |
| BitFields |
| Collision BitMasks |
| Contact Test BitMask |
| Review: Contact Delegate, Bit Masks |
| Particles |
| Add Explosion Effect |
| Creating SKEmitterNodes Manually |
| Shot Limiting |
| Challenge: Alternate Shot Limiting |
| Challenge: Alternate Shot Limiting: Solution |
| Add Shields |
| Review - Add Shields |
| Add Life Bar |
| Challenge: Add Explosion on Bounce |
| Challenge: Add Explosion on Bounce Solution |
| Game Over and New Game |
| Review: Game Reset Functionality |
| Add Scoring |
| Free art resources: OpenGameArt.org |
| Editing Sounds with Audacity |
| Converting Sounds to CAF Format |
| Space Cannon - Adding Sounds |
| Space Cannon - Add Menu |
| Space Cannon - Make Menu Functional |
| Review: locationInNode |
| Space Cannon - Fix Delay |
| Space Cannon - Add Scores to Menu |
| Review: Adding Scores to Menus |
| A Look at NSUserDefaults |
| Space Cannon - Save Scores Using NSUserDefaults |
| Space Cannon - Bug Fixes |
| Space Cannon - Increase Halo Spawn Speed |
| Space Cannon - Create Particle File for Trail Effect |
| Space Cannon - Add Trail Emitter Node To Balls |
| Space Cannon - Adjust Ball Trails With New Ball Class |
| Adjust Ball Trails With New Ball Class.mov |
| Review: Action Speed and Particle Trail Effect |
| Space Cannon - Set Bounce Limit |
| Space Cannon - Add Point Multiplier Halo |
| Space Cannon - Add Point Multiplier |
| Challenge: Add Bomb Power Up |
| Challenge: Add Bomb Power Up Solution Part 1 |
| Challenge: Add Bomb Power Up Solution Part 2 |
| Space Cannon - Create Pool for Shield Nodes |
| Space Cannon - Spawn Shield Power Ups |
| Space Cannon - Make Shield Power Ups Collectable |
| Challenge: Multi Shot Power Up |
| Challenge: Multi Shot Power Up Solution Part 1 |
| Challenge: Multi Shot Power Up Solution Part 2 |
| Challenge: Multi Shot Power Up Solution Part 3 |
| Challenge: Multi Shot Power Up Solution Part 4 |
| Space Cannon - Add Show and Hide Methods to Menu Class |
| Space Cannon - Animate the Menu's Title |
| Space Cannon - Animate Score Board |
| Space Cannon - Complete Menu Animations |
| Space Cannon - Add Pause and Resume Buttons |
| Space Cannon - Hook Up Pause Functionality |
| Space Cannon - Pause When Quitting Or When A Notification Is Received |
| Space Cannon - Add Music |
| Challenge: Add Music On Off Button |
| Challenge: Add Music On Off Button Solution Part 1 |
| Challenge: Add Music On Off Button Solution Part 2 |
| App Icon Template |
| Complete Space Cannon |
| Introduction to Brick Breaker Assignment |
| Brick Breaker Assignment Requirements |
| Setup |
| Add Paddle and Getting it Moving |
| Limit Paddle Movement |
| Add Ball |
| Setup Category Bit Mask |
| Setup Contact between Ball and Paddle |
| Complete Contact between Ball and Paddle |
| Fix Anti Gravity Ball |
| Add Bricks |
| Remove Bricks When Hit by a Ball |
| Create Class for Brick |
| Setup Blue Brick Behaviour |
| Create Load Level Method And Array For Level |
| Load Level |
| Setup Ball Release Functionality |
| Add Grey Brick Type |
| Add Extra Levels |
| Add Method to Check if Level Is Complete |
| Load Next Level and Reset Ball |
| Requred Touch Began Event to Release Ball |
| Add a Hud Bar |
| Add a Lives Property |
| Display Lives |
| Lose Lives and Reset Game |
| Add Level Display Label |
| Setup Property For Current Level Number |
| Create Particle File |
| Add Particle Effect When Bricks Are Removed |
| Create Menu Class |
| Add Text to Menu |
| Implement Hide and Show Methods on Menu |
| Make Menu Functional |
| Update Colors |
| Add Sounds |
| Restrict Paddle Movement When Positioning Ball |
| Create Yellow Brick Type |
| Spawn Extra Ball |
| Setup Project |
| Source Control With SourceTree |
| Batch File Rename |
| Planes Atlas File |
| Add Plane Class |
| Add PlanesAnimation plist file |
| Method to Create Animation Action From Array |
| Get Plane Animating |
| Challenge: Animation |
| Challenge: Animation Solution |
| Create EngineRunning Property |
| Review: Animations |
| Create Particle file |
| Add Puff Trail To Plane |
| Configure Gravity |
| Add basic physics |
| Set Target Node For Puff Trail |
| Create Scrolling Node Class |
| Create TPScrollingLayer |
| TPScrollingLayer - Implement layoutTiles method |
| Implement Tile Scrolling |
| Review: Scrolling |
| Scrolling In Both Directions |
| Create Background Layer |
| Getting the time elapsed between frames |
| Challenge: Left & Right Scrolling |
| Challenge: Left & Right Scrolling Solution Part 1 |
| Challenge: Left & Right Scrolling Solution Part 2 |
| Challenge: Left & Right Scrolling Solution Part 3 |
| Challenge: Left & Right Scrolling Solution Part 4 |
| Set Background Colour |
| Add Foreground layer |
| SKPhysics Body Path Generator |
| Visualising path based physics bodies |
| Create path based physics body for plane |
| Setup Category Bit Masks |
| Setup didBeginContact method |
| Implement Collide Method and Get Plane to Crash |
| Reset game |
| Tweaks on game reset |
| Add Rotation Effect |
| Photoshop Tips: Vectors, Smart Object, Export Layers To Files |
| Create TPObstacleLayer Class |
| Implement Update Method |
| Add createObjectForKey Method |
| Add Physics Bodies To Mountains |
| Create Obstacle Set |
| Randomize Mountain Obstacle Heights |
| Recycle Mountain Nodes |
| Add reset Method |
| Add Obstacles To Game |
| ObstacleLayer Pseudo Pooling Check and Review |
| Source Tree Commits. Context, Discard and Stage by Hunk or Line, Amend Commit |
| Set Maximum Altitude for Plane |
| Flap Challenge - Intro |
| Flap Challenge - Solution |
| Create Collectable Star Object |
| Add collectables to obstacle layer |
| Review of positioning collectables |
| Get plane to remove the stars it touches |
| Create class for collectables |
| Setup creation of collectables to use new class |
| Hook up scene as collectable delegate |
| Review of Collectable Setup |
| Fix Warnings |
| Create Class for Bitmap Font |
| Implement Bitmap Font Properties |
| Start Layout of Bitmap Font Letters |
| Complete letter layout |
| Center Align Text |
| Review of Bitmap Font Class |
| Add instance of BitmapFontLabel to display score |
| Create Plist For Tileset Graphics |
| Setup Singleton |
| Start Loading Tileset Plist File |
| Complete Loading of Property List |
| Randomize Tileset |
| Return Texture for Key from Current Tileset |
| Use Tileset Texture Provider to Randomize Mountain Textures |
| Update Ground Nodes to Use Tileset Texture |
| Review of Tileset System |
| Update Background Image to Fill To Bottom |
| Obstacle Challenge - Intro |
| Obstacle Challenge - Setup ChallengeProvider Class |
| Obstacle Challenge - Start Implementing Challenge Provider |
| Obstacle Challenge - Start Implementing Challenges |
| Obstacle Challenge - Using An Image Editor To Design Challenges |
| Obstacle Challenge - Load Challenges in Obstacle Layer |
| Obstacle Challenge Bonus - Mixing up the Textures |
| Create Button Class |
| Set Initial Properties on Button |
| Set Button Scale Based on Touch Events |
| Test Button and Fix Scaling Issue |
| Target Action Pattern |
| Test Button Press Event |
| Source Tree - Discard Changes to TPGameScene |
| Review of Button Class |
| Import Graphics For Game Over Menu |
| Setup Properties on Game Over Menu |
| Center Rect Property |
| Test Menu Panel Display |
| Setup Title Nodes on Game Over Menu |
| Add Display of Medal |
| Add Text Alignment to TPBitmapFontLabel |
| Add Text Labels to Menu |
| Add Game Over Text and Play Button to Menu |
| Animate Game Over Text |
| Animate Menu Panel |
| Space Cannon - Crash on Quit Bug Fix |
| Complete Show Animation For Game Over Menu |
| Setup Game State in the Game Scene |
| Trigger Game Over State |
| Start New Game On Button Press |
| Display Scores and Medal on Game Over Menu |
| Use NSUserDefaults to Save Best Score |
| Add Fade To Black Transition Between Games |
| Add Bump Effect On Plane Crash |
| Setup TPGetReadyMenu Class |
| Add Get Ready Text |
| Add Tap Icons to Get Ready Screen |
| Hide Get Ready Menu When Game Starts |
| Weather Challenge Intro - Weather Effects in Tappy Plane |
| Weather Challenge - Create Snow Effect |
| Weather Challenge - Create Rain Effect |
| Weather Challenge - Create Weather Layer Class |
| Weather Challenge - Setup Weather Conditions Property |
| Weather Challenge - Setup Constants For Tileset Name |
| Weather Challenge - Display Weather Layer |
| Weather Challenge - Complete Weather Challenge |
| Tint Plane Red When it Crashes |
| Freesound.org for Great Sound Assets |
| Creating Looping Sounds with Audacity |
| Refresh on Using afconvert to Prepare Audio |
| Sound Manager For More Advanced Audio |
| Add Crunch Sound on Plane Crash |
| Add Star Collection Sound |
| Add Button Sound |
| Add Engine Sound to Plane |
| Add Rain Sound |
| We've Completed Tappy Plane |
| Making Levels with Tiled |
| Resizing Tiles |
| Create Tileset Image to Use With Tiled |
| Creating a Tiled Map |
| Complete Level Using Tiled |
| Setup Alien Runner Project |
| Import JSTileMap |
| Load Tile Map |
| Setup Camera Node |
| Scroll Map As Camera Moves |
| Add Clamping to Camera |
| Setup Class for Player |
| Add Object Layer to Tiled Level |
| Position Player With Marker From Map Object Layer |
| Make Camera Follow Player |
| Add Velocity to Player and Apply Gravity |
| Discussion on Using Time Delta for Updates |
| Setup Target Position on Player |
| Define Collision Rectangle for Player |
| Show Collision Rectangle Visually |
| Discussion of Algorithm for World Collision |
| Declare Method for World Collision |
| Loop Through Coordinates for Tiles to Examine |
| Get GID for Tile |
| Calculate Intersection Between Player And Tile |
| Work Out Which Way To Move the Player |
| Complete Collision With World |
| Test Collide Method |
| Collide Method Review Part 1 |
| Collide Method Review Part 2 |
| Test Left and Right Movement |
| Fix Bug in Collision Algorithm |
| Accelerate Player to the Right |
| Give Player Jump Ability |
| Get Player Jumping |
| Setup Properties For Flipping Gravity |
| Apply Changes to Gravity |
| Test Flipping of Gravity |
| Tweak Map and Player Movement |
| Frame Size With Atlas Sprites |
| Fix Collision Rectangle Dimensions |
| Flip Alien Image When Gravity Flipped |
| Add Animation to Player |
| Add State And Change Texture For Player |
| Reset Game When Falling Too Far |
| Update Collide Method |
| Collide Player With Spikes |
| Make Player Bounce Of Screen When Hitting Spikes |
| Setup Scene Class for Main Menu |
| Add Title And Alien to Menu |
| Add Label For Level and Import Button Class |
| Add Play And Level Buttons |
| Switch Between Scenes |
| Create Level Selection Scene |
| Add Disabled Property to Button |
| Complete Setup of Disabled Property on Button |
| Add Level Selection Buttons |
| Position Level Selection Buttons |
| Respond to Level Selection Buttons |
| Create Constants File |
| Setup Defaults plist for NSUserDefaults |
| Save Selected Level to NSUserDefaults |
| Add Constant for Highest Level |
| Unlock New Levels at Game Over |
| Add Ability To Complete Level |
| Add Different Modes to Main Menu |
| Add Extra Levels |
| Fix Graphical Glitches Between Tiles |
| Add Parallax Scrolling Effect |
| Sound Discussion |
| Challenge: Player Movement - Intro |
| Challenge: Player Movement - Double Jump |
| Challenge: Player Movement - Left and Right Movement |
| Challenge: Player Movement - Hook Up Touch Events |
| Challenge: Player Movement - Set Sprite Direction and Animation |
| Course Complete!! |