SBSPSS/source/fx/fxbasetrail.h

48 lines
773 B
C
Raw Normal View History

2001-05-23 21:28:42 +02:00
/***********************/
/*** Trail Base Class ***/
/***********************/
2001-05-23 22:00:25 +02:00
#ifndef __FX_FX_BASE_TRAIL_HEADER__
#define __FX_FX_BASE_TRAIL_HEADER__
2001-05-23 21:28:42 +02:00
#include "fx/fx.h"
/*****************************************************************************/
2001-05-23 22:00:25 +02:00
class CFXBaseTrail : public CFX
2001-05-23 21:28:42 +02:00
{
public:
2001-05-31 22:07:48 +02:00
struct sFXData
{
s16 Scale;
s16 StartFrame,EndFrame;
s16 FrameShift;
u8 R,G,B;
};
2001-05-23 21:28:42 +02:00
struct sList
{
u16 Frame;
u16 Scale,Angle;
DVECTOR Ofs,Vel;
s16 Shade; // Acts as life
};
enum
{
LIST_SIZE = 16
};
virtual void init(DVECTOR const &Pos);
virtual void think(int _frames);
virtual void render();
virtual sList &moveHead();
protected:
sList List[LIST_SIZE];
s16 ListCount;
s16 HeadIdx;
u16 Trans;
};
#endif