MuckyFoot-UrbanChaos/fallen/Headers/memory.h

104 lines
2.0 KiB
C
Raw Normal View History

2017-05-20 03:14:17 +02:00
#ifndef MEMORY_H
#define MEMORY_H
#include "supermap.h"
#include "inside2.h"
#include "building.h"
//
// The map beacons.
//
typedef struct
{
UBYTE used;
UBYTE counter;
UWORD track_thing;
UWORD index;
UWORD pad;
// CBYTE *str;
SLONG wx;
SLONG wz;
ULONG ticks; // The GetTickCount when we created the beacon. LAZY!
} MAP_Beacon;
#define MAP_MAX_BEACONS 32
extern MAP_Beacon *MAP_beacon; //[MAP_MAX_BEACONS];
typedef UWORD PSX_TEX[5];
extern PSX_TEX *psx_textures_xy; //[PAP_SIZE_LO][PAP_SIZE_LO];
extern SWORD *facet_links; //[MAX_FACET_LINK];
extern struct DBuilding *dbuildings;//[MAX_DBUILDINGS];
extern struct DFacet *dfacets; //[MAX_DFACETS ];
extern struct DWalkable *dwalkables;//[MAX_DWALKABLES];
extern SWORD *dstyles; //[MAX_DSTYLES ];
extern struct DStorey *dstoreys; //[MAX_DSTOREYS];
extern UBYTE *paint_mem; //[MAX_PAINTMEM];
//
// from inside2
//
extern struct InsideStorey *inside_storeys;//[MAX_INSIDE_RECT];
extern struct Staircase *inside_stairs;//[MAX_INSIDE_STAIRS];
extern UBYTE *inside_block;//[MAX_INSIDE_MEM];
extern UBYTE inside_tex[64][16];
//
// from building.cpp
//
extern struct BoundBox *roof_bounds;//[MAX_ROOF_BOUND];
extern struct PrimPoint *prim_points;//[MAX_PRIM_POINTS];
extern struct PrimFace4 *prim_faces4;//[MAX_PRIM_FACES4];
extern struct PrimFace3 *prim_faces3;//[MAX_PRIM_FACES3];
extern struct PrimObject *prim_objects;//[MAX_PRIM_OBJECTS];
extern struct PrimMultiObject *prim_multi_objects;//[MAX_PRIM_MOBJECTS];
extern PrimNormal *prim_normal;//[MAX_PRIM_POINTS];
extern PrimInfo *prim_info;//[256];//MAX_PRIM_OBJECTS];
// functions
extern void init_memory(void);
//extern OB_Mapwho OB_mapwho;//[OB_SIZE][OB_SIZE];
#define MAX_ROOF_FACE4 10000
extern UWORD next_roof_face4;
extern struct RoofFace4 *roof_faces4;
#ifndef PSX
//
// Quick load\save
//
void MEMORY_quick_init(void);
void MEMORY_quick_save(void);
SLONG MEMORY_quick_load_available(void);
SLONG MEMORY_quick_load (void);
#endif
#endif