www.pudn.com > sxdl.zip > Game.h


#ifndef Game_Included
#define Game_Included

#include "sxdl.h"

#include "Player.h"
#include "Ball.h"

class Game : public SxDL
{
public:
Game ( void ) { } ;
virtual ~Game ( void ) { } ;
virtual void OnStartup ( void ) ;
virtual void OnCreateGame ( void ) ;
virtual void OnTimer ( int TimerId ) ;
virtual bool OnQuitMenu ( float ElapsedTime , float AbsoluteTime ) ;
virtual void OnNewLevel ( void ) ;
virtual void OnRenderText ( float ElapsedTime , float AbsoluteTime ) ;

// Resources used by this game
enum ResourceIds
{
Null = 0 ,
MidiMusic = 1 ,
Player = 10 ,
Player_bis = 11 ,
Projectile = 20 ,
Ball = 30 ,
Explode = 40 ,
Wall = 50 ,
Life = 60 ,
Bonus = 70,
Eclat = 80
} ;

enum Families
{
FPlayer = 1 ,
FProjectile = 2 ,
FBall = 3 ,
FWall = 4 ,
FBonus = 5
} ;

enum Timers
{
Start = 1 ,
Dead = 2 ,
StartBoss = 3 ,
P1NoInvincible = 4 ,
P2NoInvincible = 5 ,
} ;

CFont * Font ;

static Resource Resources [ ] ;

CMovieSprite * PlayerSprites [ 4 ] ;
CMovieSprite * Player2Sprites [ 4 ] ;
CMovieSprite * BonusSprites [ 2 ] ;
CBasicSprite * ProjectileSprites;
CBasicSprite * WallSprites;
CBasicSprite * BallSprites[10];
CBasicSprite * LifeSprites;
CBasicSprite * EclatSprites;


CCollider * ColliderPlayerBall;
CCollider * ColliderProjectileBall;
CCollider * ColliderBallWall;
CCollider * ColliderPlayerWall;
CCollider * ColliderPlayerPlayer;
CCollider * ColliderPlayerBonus;

int BallCount ;
int Level;

CPlayer * Player1 ;
CPlayer * Player2 ;

int PlayerNb;

} ;

//////////////////////////////////

class CWall : public CEntity
{
public:
CWall ( CBasicSprite * Sprite, int x , int y , int cx , int cy ) ;
virtual ~CWall ( void ) { } ;
virtual void OnCollide ( CEntity * CollidingEntity ) ;
Vector3 Normal ;
} ;

#endif