diff options
Diffstat (limited to 'zoom')
-rw-r--r-- | zoom/level.h | 8 | ||||
-rw-r--r-- | zoom/player.h | 2 | ||||
-rw-r--r-- | zoom/types.h | 27 |
3 files changed, 26 insertions, 11 deletions
diff --git a/zoom/level.h b/zoom/level.h index c9f5345..0ed961c 100644 --- a/zoom/level.h +++ b/zoom/level.h @@ -2,7 +2,7 @@ #define ZOOM_LEVEL_H
#include <GL/gl.h>
-#include "types.h"
+#include <zoom/types.h>
#pragma pack(push, 2)
typedef struct _LEVELHEADER {
@@ -13,7 +13,7 @@ typedef struct _LEVELHEADER { typedef struct _ROOMHEADER {
int nWalls;
- int nObjects;
+ int nThings;
int nGates;
} ROOMHEADER;
@@ -24,10 +24,10 @@ typedef struct _GATEINFO { typedef struct _ROOM {
int nWalls;
- int nObjects;
+ int nThings;
int nGates;
WALL *walls;
- OBJECT *objects;
+ THING *things;
GATE *gates;
GATEINFO *gateinfo;
} ROOM;
diff --git a/zoom/player.h b/zoom/player.h index 06c0e28..e9beec6 100644 --- a/zoom/player.h +++ b/zoom/player.h @@ -1,7 +1,7 @@ #ifndef ZOOM_PLAYER_H
#define ZOOM_PLAYER_H
-#include "types.h"
+#include <zoom/types.h>
#define INPUT_UP 1
#define INPUT_DOWN 2
diff --git a/zoom/types.h b/zoom/types.h index eeacde7..9e40ea6 100644 --- a/zoom/types.h +++ b/zoom/types.h @@ -7,10 +7,15 @@ #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 LIGHT_UNKNOWN 0
+#define LIGHT_POINT 1
+#define LIGHT_DIRECTIONAL 2
+#define LIGHT_SPOT 3
+
+#define THING_UNKNOWN 0
+#define THING_MEDIPAK25 1
+#define THING_MEDIPAK50 2
+#define THING_MEDIPAK100 3
#define GATE_UNKNOWN 0
#define GATE_SIDE 1
@@ -36,11 +41,21 @@ typedef struct WALL { TEXCOORDS texcoords[3];
} WALL;
-typedef struct _OBJECT {
+typedef struct _COLOR {
+ float r, g, b;
+} COLOR;
+
+typedef struct _LIGHT {
+ unsigned char type;
+ COLOR diffuse;
+ VERTEX pos;
+} LIGHT;
+
+typedef struct _THING {
unsigned char type;
unsigned char visible;
VERTEX pos;
-} OBJECT;
+} THING;
typedef struct _GATE {
unsigned char type;
|