Book Image

Sparrow iOS Game Framework Beginner's Guide

By : Stein
Book Image

Sparrow iOS Game Framework Beginner's Guide

By: Stein

Overview of this book

An easy-to-follow guide full of descriptive step-by-step procedures on how to develop a game for iOS. With each topic, a new challenge will be tackled to get a deeper knowledge of the Sparrow game framework and gain the skills to develop a complete mobile experience. This book is aimed at those who have always wanted to create their own games for iOS devices. Perhaps you've already dabbled in game development and want to know how to develop games for the Apple App Store, or maybe you have developed Objective-C apps in the past but you are new to game development. In either case, this book will help with descriptive examples and teach you to develop a game throughout its course. Some experience in Objective-C and a basic understanding of object-oriented programming are required.
Table of Contents (15 chapters)
13
Afterword
14
Index

Time for action – allowing the ship to shoot cannonballs


Let's allow the pirate ship to shoot cannonballs by following these steps:

  1. Open the Ship.h file.

  2. Add a read-only property called isShooting, which has an instance variable counterpart called _isShooting, as shown in the following code:

    @property (readonly) BOOL isShooting;
  3. Add a cannonball for the left-hand side and the right-hand side of the ship. Both of them are pointers to SPImage, as shown in the following code:

    @property SPImage *cannonBallLeft;
    @property SPImage *cannonBallRight;
  4. Switch to the Ship.m file.

  5. Inside the initWithType method, set the _isShooting instance variable to NO at the top of the method.

  6. Inside the initWithType method, create both cannonballs with the cannonball.png image, set their visible property to NO, and add them to the display tree.

  7. Inside the shoot method, abort if _isShooting is set to YES, else set _isShooting to YES, as shown:

    if (_isShooting) {
      return;
    }
    
    _isShooting = YES;
  8. Set some default values for the...