home *** CD-ROM | disk | FTP | other *** search
-
- // This object moves and renders the flying saucer.
- // It is always on the stage, but is not always active. If it's
- // inactive, it does a test every cycle to decide when to come out.
-
- #import <gamekit/gamekit.h>
-
- // size of an alien
- #define SAUCER_WIDTH 32
- #define SAUCER_HEIGHT 16
- #define SAUCER_FRAMES 3
-
- // possible states (determine what we can do, etc.)
- #define SAUCER_ACTIVE (GK_DEAD_ACTOR + 1)
- #define SAUCER_INACTIVE GK_DEAD_ACTOR
-
- // speed of bullet drop...
- #define SAUCER_MOVE_SPEED 2
-
- // how long to wait for next saucer
- #define SAUCER_DELAY random() % 500 + 500
-
- @interface NXISaucer:GKActor
- {
- float screenWidth, screenHeight;
- int nextTime; // when to put it on the screen next
- }
-
- - init;
- - setStage:aStage;
- - collidedWith:anActor; // called when it is detected that we hit something
- - move:sender; // decide where to move the ghost for the next frame
-
- @end
-