CGE: Created PocLight class to encapsulate the LI sprite array

This commit is contained in:
Paul Gilbert 2011-07-10 10:10:51 +10:00
parent 47b17cd1ce
commit 0bbefbef90
5 changed files with 18 additions and 15 deletions

View File

@ -68,19 +68,12 @@ void CGEEngine::setup() {
Bitmap::init(); Bitmap::init();
Talk::init(); Talk::init();
// Initialise sprite arrays used by game objects
LI[0] = new Bitmap("LITE0", true);
LI[1] = new Bitmap("LITE1", true);
LI[2] = new Bitmap("LITE2", true);
LI[3] = new Bitmap("LITE3", true);
LI[4] = NULL;
// Initialise engine objects // Initialise engine objects
_text = new Text(this, progName(), 128); _text = new Text(this, progName(), 128);
_vga = new Vga(M13H); _vga = new Vga(M13H);
_heart = new Heart; _heart = new Heart;
_sys = new System(this); _sys = new System(this);
_pocLight = new Sprite(this, LI); _pocLight = new PocLight(this);
for (int i = 0; i < POCKET_NX; i++) for (int i = 0; i < POCKET_NX; i++)
_pocket[i] = new Sprite(this, NULL); _pocket[i] = new Sprite(this, NULL);
_sprite = new Sprite(this, NULL); _sprite = new Sprite(this, NULL);
@ -150,10 +143,6 @@ CGEEngine::~CGEEngine() {
delete _infoLine; delete _infoLine;
delete _cavLight; delete _cavLight;
delete _debugLine; delete _debugLine;
delete LI[0];
delete LI[1];
delete LI[2];
delete LI[3];
delete _text; delete _text;
delete _heart; delete _heart;
delete _pocLight; delete _pocLight;

View File

@ -75,8 +75,6 @@ InfoLine *_infoLine;
Sprite *_cavLight; Sprite *_cavLight;
InfoLine *_debugLine; InfoLine *_debugLine;
BMP_PTR LI[5];
Snail *_snail; Snail *_snail;
Snail *_snail_; Snail *_snail_;

View File

@ -180,7 +180,6 @@ extern InfoLine *_infoLine;
extern Sprite *_cavLight; extern Sprite *_cavLight;
extern InfoLine *_debugLine; extern InfoLine *_debugLine;
extern BMP_PTR MC[3]; extern BMP_PTR MC[3];
extern BMP_PTR LI[5];
extern Snail *_snail; extern Snail *_snail;
extern Snail *_snail_; extern Snail *_snail_;

View File

@ -1390,4 +1390,16 @@ Spike::Spike(CGEEngine *vm): Sprite(vm, NULL) {
setShapeList(SP); setShapeList(SP);
} }
PocLight::PocLight(CGEEngine *vm): Sprite(vm, NULL) {
// Set the sprite list
BMP_PTR *LI = new BMP_PTR[5];
LI[0] = new Bitmap("LITE0", true);
LI[1] = new Bitmap("LITE1", true);
LI[2] = new Bitmap("LITE2", true);
LI[3] = new Bitmap("LITE3", true);
LI[4] = NULL;
setShapeList(LI);
}
} // End of namespace CGE } // End of namespace CGE

View File

@ -321,6 +321,11 @@ public:
Spike(CGEEngine *vm); Spike(CGEEngine *vm);
}; };
class PocLight: public Sprite {
public:
PocLight(CGEEngine *vm);
};
Dac mkDac(uint8 r, uint8 g, uint8 b); Dac mkDac(uint8 r, uint8 g, uint8 b);
Rgb mkRgb(uint8 r, uint8 g, uint8 b); Rgb mkRgb(uint8 r, uint8 g, uint8 b);