SBSPSS/source/level/layerback.h

68 lines
1.1 KiB
C
Raw Normal View History

2001-01-13 18:04:56 +01:00
/************************/
/*** Back Layer Class ***/
/************************/
#ifndef __LAYER_BACK_H__
#define __LAYER_BACK_H__
/*****************************************************************************/
2001-05-03 22:50:32 +02:00
/*
2001-03-09 23:10:53 +01:00
struct sBackSpriteInfo
{
int Frame;
int Flags;
u16 Trans;
};
enum BackSpriteFlag
{
};
2001-03-09 22:17:14 +01:00
struct sBackSprite
{
2001-03-09 23:10:53 +01:00
int Type;
2001-03-09 22:17:14 +01:00
POLY_GT4 Poly;
DVECTOR Pos,PosInc;
DVECTOR Scale,ScaleInc;
int W,H;
s16 Angle,AngleInc;
};
2001-03-09 23:10:53 +01:00
struct sBackRGBTable
{
u8 R,G,B,P;
};
2001-05-03 22:50:32 +02:00
*/
2001-03-09 22:17:14 +01:00
/*****************************************************************************/
class SpriteBank;
2001-01-13 18:04:56 +01:00
class CLayerBack : public CLayerTile
{
public:
2001-03-09 22:17:14 +01:00
enum
{
MOVE_SHIFT=4,
};
2001-04-19 17:12:21 +02:00
CLayerBack(sLevelHdr *LevelHdr,sLayerHdr *Hdr);
2001-01-13 18:04:56 +01:00
~CLayerBack();
2001-02-22 15:55:13 +01:00
void init(DVECTOR &MapPos,int Shift);
2001-01-13 18:04:56 +01:00
void shutdown();
void think(DVECTOR &MapPos);
void render();
protected:
2001-02-20 16:56:16 +01:00
sLayerShadeHdr *Data;
2001-03-09 22:17:14 +01:00
int XOfs,YOfs;
int PosDx,PosDy;
2001-02-20 20:17:03 +01:00
int BandCount,BandHeight;
POLY_G4 Band[LAYER_SHADE_RGB_MAX-1];
2001-01-13 18:04:56 +01:00
};
/*****************************************************************************/
#endif