summaryrefslogtreecommitdiffstats
path: root/zoom
diff options
context:
space:
mode:
Diffstat (limited to 'zoom')
-rw-r--r--zoom/level.h8
-rw-r--r--zoom/player.h2
-rw-r--r--zoom/types.h27
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;