
libzoom: zoom/types.h: WALL-Struktur als Ersatz f?r TRIANGLE eingef?gt; zoom/level.h, level.c und player.c an die neuen Strukturen angepasst
55 lines
946 B
C
55 lines
946 B
C
#ifndef ZOOM_TYPES_H
|
|
#define ZOOM_TYPES_H
|
|
|
|
#include <neofx/types.h>
|
|
|
|
#define TRIANGLE_UNKNOWN 0
|
|
#define TRIANGLE_WALL 1
|
|
#define TRIANGLE_FLOOR 2
|
|
|
|
#define OBJECT_UNKNOWN 0
|
|
#define OBJECT_MEDIPAK25 1
|
|
#define OBJECT_MEDIPAK50 2
|
|
#define OBJECT_MEDIPAK100 3
|
|
|
|
#define GATE_UNKNOWN 0
|
|
#define GATE_SIDE 1
|
|
|
|
#define STATE_UNKNOWN 0
|
|
#define STATE_OPENED 1
|
|
#define STATE_CLOSED 2
|
|
#define STATE_OPENING 3
|
|
#define STATE_CLOSING 4
|
|
|
|
#pragma pack(push, 2)
|
|
typedef struct WALL {
|
|
unsigned char type;
|
|
unsigned char visible;
|
|
union {
|
|
TRIANGLE triangle;
|
|
struct {
|
|
VERTEX vertices[3];
|
|
VECTOR normal;
|
|
};
|
|
};
|
|
int texture;
|
|
TEXCOORDS texcoords[3];
|
|
} WALL;
|
|
|
|
typedef struct _OBJECT {
|
|
unsigned char type;
|
|
unsigned char visible;
|
|
VERTEX pos;
|
|
} OBJECT;
|
|
|
|
typedef struct _GATE {
|
|
unsigned char type;
|
|
unsigned char open;
|
|
WALL walls[2];
|
|
VERTEX point;
|
|
int room;
|
|
int gate;
|
|
} GATE;
|
|
#pragma pack(pop)
|
|
|
|
#endif
|