foo
[vrlugburz] / src / level.h
index 53eb9c1..6e6eed7 100644 (file)
@@ -2,12 +2,17 @@
 #define LEVEL_H_
 
 #include "scenefile.h"
+#include "tileset.h"
+
+#define DEF_CELL_SIZE  3.0f
 
 enum {
-       TILE_EMPTY,
-       TILE_STRAIGHT,
+       TILE_OPEN,
+       TILE_STR,
        TILE_CORNER,
-       TILE_DOOR
+       TILE_TEE,
+       TILE_CROSS,
+       TILE_STR2OPEN
 };
 
 enum {
@@ -19,7 +24,6 @@ enum {
 struct tile {
        char *name;
        int type;
-       struct scenefile scn;
        struct tile *next;
 };
 
@@ -38,9 +42,11 @@ struct level {
        char *fname, *dirname;
 
        int width, height;
+       int px, py;                             /* player start position */
+       float cell_size;
        struct cell *cells;
 
-       struct tile *tiles;
+       struct tileset *tset;
 
        /* meshes owned by the level, constructed during geometry generation or
         * loaded, excluding meshes in tiles scenefiles
@@ -55,7 +61,7 @@ void destroy_level(struct level *lvl);
 int load_level(struct level *lvl, const char *fname);
 int save_level(struct level *lvl, const char *fname);
 
-struct tile *find_level_tile(struct level *lvl, const char *tname);
+struct tile *find_level_tile(struct level *lvl, int type);
 
 int gen_cell_geom(struct level *lvl, struct cell *cell);
 int gen_level_geom(struct level *lvl);