X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=vrlugburz;a=blobdiff_plain;f=src%2Flevel.h;fp=src%2Flevel.h;h=6a57dc2540750be6c74790b1ad6f8b7b42709ba9;hp=76006f358a79bab8bb9decd2df517a2ce7fa8150;hb=6066118fc6a58b379f52b9aaaf45200b136812b9;hpb=95e4bd8e387c3cb9fc325ae922052bf7bc7ae8ea diff --git a/src/level.h b/src/level.h index 76006f3..6a57dc2 100644 --- a/src/level.h +++ b/src/level.h @@ -1,21 +1,42 @@ #ifndef LEVEL_H_ #define LEVEL_H_ +#include "scenefile.h" + +enum { + TILE_STRAIGHT, + TILE_CORNER, + TILE_DOOR +}; + enum { CELL_SOLID, CELL_WALK, CELL_BLOCKED }; +struct tile { + char *name; + int type; + struct scenefile scn; + struct tile *next; +}; + struct cell { int type; int wall[4]; int floor, ceil; + + struct meshgroup mgrp; }; struct level { + char *fname, *dirname; + int width, height; struct cell *cells; + + struct tile *tiles; }; @@ -25,4 +46,6 @@ void destroy_level(struct level *lvl); int load_level(struct level *lvl, const char *fname); int save_level(struct level *lvl, const char *fname); +int gen_level_geom(struct level *lvl); + #endif /* LEVEL_H_ */