SBSPSS/source/fx/fxbaseemitter.h

38 lines
777 B
C
Raw Normal View History

2001-05-31 17:59:06 +02:00
/**************************/
/*** Emitter Base Class ***/
/**************************/
2001-05-31 22:07:48 +02:00
#ifndef __FX_FX_BASE_EMITTER_HEADER__
#define __FX_FX_BASE_EMITTER_HEADER__
2001-05-31 17:59:06 +02:00
#include "fx/fx.h"
/*****************************************************************************/
2001-05-31 22:07:48 +02:00
class CFXBaseEmitter : public CFX
2001-05-31 17:59:06 +02:00
{
public:
2001-05-31 22:07:48 +02:00
struct sFXData
{
u16 Rate,Amount;
u16 Life;
CFX::FX_TYPE ParticleType;
};
2001-05-31 17:59:06 +02:00
virtual void init(DVECTOR const &Pos);
virtual void shutdown();
virtual void think(int _frames);
virtual void render();
2001-05-31 22:07:48 +02:00
void setData(void *Data) {DataPtr=(sFXData*)Data;}
2001-05-31 17:59:06 +02:00
2001-05-31 22:07:48 +02:00
virtual void setSize(int W,int H) {Width=W; Height=H;}
virtual void createParticle(int _frames);
2001-05-31 17:59:06 +02:00
protected:
2001-05-31 22:07:48 +02:00
sFXData *DataPtr;
2001-05-31 17:59:06 +02:00
s16 Width,Height;
2001-05-31 22:07:48 +02:00
s16 CurrentCount;
2001-05-31 17:59:06 +02:00
};
#endif