MuckyFoot-UrbanChaos/fallen/Headers/Level.h

140 lines
2.3 KiB
C
Raw Normal View History

2017-05-20 03:14:17 +02:00
// Level.h
// Guy Simmons, 26th January 1998.
#ifndef LEVEL_H
#define LEVEL_H
//---------------------------------------------------------------
struct ThingDef
{
UBYTE Version;
SLONG Class,
Genus,
X,Y,Z;
UWORD CommandRef;
SLONG Data[10];
UWORD EdThingRef;
};
//---------------------------------------------------------------
struct WaypointDef
{
UBYTE Version;
UWORD Next,
Prev;
SLONG X,Y,Z;
UWORD EdWaypointRef;
};
//---------------------------------------------------------------
struct ConditionListDef
{
UBYTE Version;
CBYTE ListName[32];
ULONG ConditionCount;
UWORD EdConListRef;
};
//---------------------------------------------------------------
struct ConditionDef
{
UBYTE Version;
UWORD Flags,
ConditionType,
GroupRef;
SLONG Data1,
Data2,
Data3;
};
//---------------------------------------------------------------
struct CommandListDef
{
UBYTE Version;
CBYTE ListName[32];
ULONG CommandCount;
UWORD EdComListRef;
};
//---------------------------------------------------------------
struct CommandDef
{
UBYTE Version;
UWORD Flags,
CommandType,
GroupRef;
SLONG Data1,
Data2,
Data3;
};
//---------------------------------------------------------------
// Level format.
// VERSION 0
// UBYTE Version
// ULONG ThingCount
// ThingDef ThingDefs * ThingCount
// VERSION 1
// UBYTE Version
// ULONG ThingCount
// ThingDef ThingDefs * ThingCount
// ULONG WaypointCount
// WaypointDef WaypointDefs * WaypointCount
// VERSION 2
// UBYTE Version
// ULONG ThingCount
// ThingDef ThingDefs * ThingCount
// ULONG WaypointCount
// WaypointDef WaypointDefs * WaypointCount
// ULONG ConditionListCount
// (
// ConditionListDef
// ConditionDef * ConditionListDef.ConditionCount
// ) * ConditionListCount
// VERSION 3
// UBYTE Version
// ULONG ThingCount
// ThingDef ThingDefs * ThingCount
// ULONG WaypointCount
// WaypointDef WaypointDefs * WaypointCount
// ULONG ConditionListCount
// (
// ConditionListDef
// ConditionDef * ConditionListDef.ConditionCount
// ) * ConditionListCount
// ULONG CommandListCount
// (
// CommandListDef
// ConmmandDef * CommandListDef.CommandCount
// ) * CommandListCount
//---------------------------------------------------------------
BOOL load_level(ULONG level);
//---------------------------------------------------------------
#endif