Annotation of talos/src/talos.h, revision 1.1
1.1 ! nick 1: /*
! 2: * Froggix
! 3: *
! 4: * Nicholas DeClario 2009
! 5: * <nick@declario.com>
! 6: *
! 7: * This program is distributed under the GNU Public License
! 8: * <Insert GNU license blurb here>
! 9: */
! 10:
! 11:
! 12: /*
! 13: * Our pretty standard includes
! 14: */
! 15: #include <stdio.h>
! 16: #include <stdlib.h>
! 17: #include <unistd.h>
! 18: #include <time.h>
! 19:
! 20: #include <SDL.h>
! 21: #include <SDL_mixer.h>
! 22: #include <SDL_image.h>
! 23: #include <SDL_ttf.h>
! 24:
! 25: /*
! 26: * Set some basic definitions
! 27: */
! 28: #define VER "$Id$";
! 29: #define TITLE "Unnamed Side-Scroller"
! 30: #define SCREEN_WIDTH 640
! 31: #define SCREEN_HEIGHT 480
! 32: #define FALSE 0
! 33: #define TRUE 1
! 34: #define LIVES 3
! 35: #define COLORKEY 255, 0, 255
! 36: #define BGCOLOR 0, 0, 0
! 37: #define TALOS_START_X 290
! 38: #define TALOS_START_Y 425
! 39: #define UP 1
! 40: #define DOWN 2
! 41: #define LEFT 3
! 42: #define RIGHT 4
! 43: #define X 0
! 44: #define Y 1
! 45: #define FRAME 24
! 46: #define HFRAME 12
! 47:
! 48: /* Point table */
! 49: #define HIGH_SCORE 4630
! 50:
! 51: /* baddies */
! 52: #define VEHICLE 0
! 53: #define LOG 1
! 54: #define TURTLE 2
! 55: #define GATOR 3
! 56: #define SNAKE 4
! 57: #define BEAVER 5
! 58:
! 59: /* Turtles */
! 60: #define DIVE_START_TIME 50
! 61: #define DIVE_PHASE_TIME 20
! 62: #define MAX_TURTLES 9
! 63: #define TURTLE_ANIM_TIME 5
! 64:
! 65: /* Vehicles */
! 66: #define MAX_VEHICLES 40
! 67:
! 68:
! 69: /*
! 70: * Froggers dstruct
! 71: */
! 72: typedef struct {
! 73: int placement[2];
! 74: int oldPlacement[2];
! 75: int direction;
! 76: int location;
! 77: int hopCount;
! 78: int currentRow;
! 79: int alive;
! 80: int riding;
! 81: int ridingIdx;
! 82: int ridingType;
! 83: int talosger; /* Are we talosger or bonus talos */
! 84: int deathType;
! 85: int deathCount;
! 86:
! 87: SDL_Rect src;
! 88: SDL_Rect dst;
! 89:
! 90: Mix_Chunk *s_hop;
! 91: Mix_Chunk *s_squash;
! 92: Mix_Chunk *s_splash;
! 93: Mix_Chunk *s_extra;
! 94: } talosgerObj;
! 95:
! 96: /*
! 97: * Vehicles
! 98: */
! 99: typedef struct {
! 100: int placement[2];
! 101: int oldPlacement[2];
! 102: int direction; // LEFT or RIGHT
! 103: int row; // row
! 104: int speed; // How fast are we traveling
! 105: int level; // Must be >= this level to display
! 106:
! 107: SDL_Rect src;
! 108: } vehicleObj;
! 109:
! 110: int keyEvents( SDL_Event event );
! 111: int mySDLInit( void );
! 112: void beginGame( void );
! 113: int loadMedia( void );
! 114: int heartbeat( void );
! 115: int updateGameState( void );
! 116: void checkFly( void );
! 117: void checkGator( void );
! 118: void configGameScreen( void );
! 119: void drawGameScreen( void );
! 120: void drawBackground( void );
! 121: int getRowPixel ( int row );
! 122: int collisionRow ( void );
! 123: int freeFrog( int score );
! 124: int collideFrogger ( int x, int y, int h, int w );
! 125: void checkFroggerBorder( void );
! 126: void levelUp( void );
! 127: int checkGoals( void );
! 128: void talosgerReset( void );
! 129: void moveFrogger( void );
! 130: void ridingFrogger( );
! 131: void drawTitleScreen( void );
! 132: void drawPauseScreen( void );
! 133: void drawGameOver( void );
! 134: int drawDeathSequence( int deathType );
! 135: int checkTimer( void );
! 136: void drawScore( int high, int score );
! 137: void drawNumbers( int num, int x, int y );
! 138: void drawGoals( void );
! 139: void drawTimer( int length );
! 140: void drawLives( int lives );
! 141: void drawLevel( int level );
! 142: void drawWood( void );
! 143: void drawTurtles( void );
! 144: void drawVehicles( void );
! 145: void drawImage(SDL_Surface *srcimg, int sx, int sy, int sw, int sh, SDL_Surface *dstimg, int dx, int dy, int alpha );
! 146: void playSound( Mix_Chunk *sound );
! 147: void setFullScreenMode( void );
! 148:
! 149: int flyTimer = 0;
! 150: int gatorTimer = 0;
! 151: int level = 0;
! 152: int playing = 0;
! 153: int lives = 0;
! 154: int players = 0;
! 155: int score = 0;
! 156: int givenFreeFrog = 0;
! 157: int hScore = HIGH_SCORE;
! 158: int redraw_all = 0;
! 159: int fullscreen = 0;
! 160: int drawBG = 0;
! 161: int goDelay;
! 162: float timeLeft;
! 163: talosgerObj talosger;
! 164:
! 165: Mix_Chunk *s_freeFrog;
! 166: SDL_Surface *gfx;
! 167: SDL_Surface *background; // This is the talosger back drop
! 168: SDL_Rect backgroundRect;
! 169: SDL_Surface *titleSurface; // Title 'Froggix' image
! 170: SDL_Surface *screen; //This pointer will reference the backbuffer
! 171: SDL_Rect leftBorderRect;
! 172: SDL_Rect rightBorderRect;
! 173: TTF_Font *font;
! 174:
! 175: int debugBorder = 0;
! 176:
! 177:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>