Logo Search packages:      
Sourcecode: lbreakout2 version File versions  Download package

game.h

/***************************************************************************
                          local_game.h  -  description
                             -------------------
    begin                : Thu Sep 6 2001
    copyright            : (C) 2001 by Michael Speck
    email                : kulkanie@gmx.net
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

/* in game client states */
enum {
      CS_NONE = 0,
      CS_RECV_LEVEL,    /* wait for level data from server */
      CS_SCORE_TABLE,   /* score table in local game */
      CS_FINAL_TABLE, /* final score table in local game */
      CS_FINAL_PLAYER_INFO, /* info that player cleared all levels */
      CS_RECV_STATS, /* wait for server to send stats */
      CS_FINAL_STATS, /* looking at final network player stats */
      CS_GET_READY,     /* await click from user */
      CS_PLAY,    /* render frame */
      CS_NEXT_PLAYER,   /* cycle to next player in local game */
      CS_NEXT_LEVEL,    /* init next level for player in local game */
      CS_RESTART_LEVEL, /* player begins at reset level next time */
      CS_LOOSE_LIFE,    /* take a snapshot and decrease lives */
      CS_ROUND_RESULT,/* await click and start level receive after it */
      CS_GAME_OVER,     /* all levels are played */
      CS_CONFIRM_WARP,
      CS_CONFIRM_QUIT,
      CS_CONFIRM_RESTART,
        CS_CONFIRM_CONTINUE,
      CS_FATAL_ERROR,   /* display error and quit game after it */
      CS_PAUSE
};

/* create various resources like shrapnells */
void client_game_create();
void client_game_delete();

/* create network/local game context and initiate game state:
 * network needs to receive the level data and a local game
 * has to load the next level */
int client_game_init_local( char *setname );
int client_game_init_network( char *opponent_name, int diff );

/* create local game context and initiate game state
 * as given from slot 'slot_id'. */
int client_game_resume_local( int slot_id );

/* finalize a game and free anything allocated by init process */
void client_game_finalize();

/* run the state driven loop until game is broken up or finished */
void client_game_run( void );

/* test a level until all balls got lost */
void client_game_test_level( Level *level );


Generated by  Doxygen 1.6.0   Back to index