SBSPSS/Utils/MapEdit/ExportHdr.h

140 lines
2.8 KiB
C
Raw Normal View History

2001-02-01 15:46:51 +01:00
/**********************/
/*** Export Structs ***/
/**********************/
#ifndef __EXPORT_STRUCTS_HEADER__
#define __EXPORT_STRUCTS_HEADER__
#include <Vector>
#include <List.h>
/*****************************************************************************/
2001-04-09 16:04:42 +02:00
#define EXPORT_LAYER_COUNT 16
2001-02-01 15:46:51 +01:00
struct sExpFileHdr
{
int TileCount;
int TileOfs;
2001-02-06 23:25:39 +01:00
int TileW,TileH;
2001-02-01 15:46:51 +01:00
int TriCount;
int TriOfs;
2001-02-06 23:25:39 +01:00
int SetNameCount;
int SetNameOfs;
int TexNameCount;
int TexNameOfs;
2001-02-01 15:46:51 +01:00
int LayerCount;
2001-02-07 22:31:31 +01:00
int LayerOfs[EXPORT_LAYER_COUNT];
2001-02-01 15:46:51 +01:00
};
/*****************************************************************************/
2001-02-06 23:25:39 +01:00
struct sExpTile
2001-02-01 15:46:51 +01:00
{
2001-02-06 23:25:39 +01:00
int Set;
int Tile;
int TriStart;
int TriCount;
u16 XOfs,YOfs;
u8 *RGB;
// int TexId; // n -1
// int Flags; // Flip Flags
bool operator==(sExpTile const &v1)
{
return(Set==v1.Set && Tile==v1.Tile);
}
};
2001-02-20 16:57:03 +01:00
/*****************************************************************************/
struct sExpColTile
{
u8 Tile;
u8 Flags;
bool operator==(sExpColTile const &v1)
{
return(Tile==v1.Tile && Flags==v1.Flags);
}
};
2001-02-06 23:25:39 +01:00
/*****************************************************************************/
struct sExpTri
{
int TexID;
Vector3 vtx[3];
float uv[3][2];
2001-02-01 15:46:51 +01:00
};
/*****************************************************************************/
/*****************************************************************************/
/*****************************************************************************/
struct sExpLayerHdr
{
int Type;
int SubType;
int Width;
int Height;
};
/*****************************************************************************/
struct sExpLayerTile
{
2001-02-06 23:25:39 +01:00
u16 Tile;
u16 Flags;
// bool operator==(sExpLayerTile const &v1) {return (Tile==v1.Tile);}
2001-04-19 17:36:49 +02:00
//bool operator==(sExpLayerTile const &v1) {return (Tile==v1.Tile);}
bool operator ==(sExpLayerTile const &v1) {return(Tile==v1.Tile && Flags==v1.Flags);}
2001-02-01 15:46:51 +01:00
};
/*****************************************************************************/
2001-02-06 23:25:39 +01:00
/*
2001-02-01 15:46:51 +01:00
struct sExpTex
{
char *Filename;
BOOL operator==(sExpTex const &v1) {return (!strcmp(Filename,v1.Filename));}
};
2001-02-06 23:25:39 +01:00
*/
/*
2001-02-01 15:46:51 +01:00
struct sExpMapElem
{
2001-02-06 23:25:39 +01:00
u16 Set;
u16 Tile;
u16 Flags;
2001-02-01 15:46:51 +01:00
2001-02-06 23:25:39 +01:00
BOOL operator==(sExpMapElem const &v1)
2001-02-01 15:46:51 +01:00
{
2001-02-02 20:18:13 +01:00
return(Set==v1.Set && Tile==v1.Tile);
2001-02-01 15:46:51 +01:00
}
};
2001-02-06 23:25:39 +01:00
*/
2001-02-01 15:46:51 +01:00
/*****************************************************************************/
2001-03-29 19:59:01 +02:00
/*** Things ******************************************************************/
/*****************************************************************************/
2001-04-07 23:05:33 +02:00
struct sLayerThingData
2001-03-29 19:59:01 +02:00
{
2001-04-07 23:05:33 +02:00
int WaypointCount;
2001-04-01 22:22:49 +02:00
int Speed;
int TurnRate;
2001-04-07 23:05:33 +02:00
int Health;
int AttackStrength;
2001-03-29 19:59:01 +02:00
bool CollisionFlag;
bool PlayerFlag;
2001-04-07 23:05:33 +02:00
// Platform
int MoveType;
int PlatformType;
// Boxes
int Width,Height;
// Spare
2001-04-23 16:51:44 +02:00
int TriStart,TriCount;
int Spare[2];
2001-04-07 23:05:33 +02:00
2001-03-29 19:59:01 +02:00
};
2001-04-07 23:05:33 +02:00
2001-02-01 15:46:51 +01:00
#endif