#ifndef ___LEVEL_H
#define ___LEVEL_H
#include<stdio.h>
//#include"object.h"
//#include"monster.h"

#define C_WALL	0
#define C_FLOOR	1
#define C_HIGH	2
#define C_DOWN	3
#define C_WATER	4
#define C_CDOOR	5
#define C_ODOOR	6

typedef struct {
  unsigned char t, f, k;
  unsigned int i, l; // type, flag, known, id (level+type-unicate), intensity
  tobj *o;
  tmonster *m;
} tceil;

typedef struct {
  int h,w;
//  char **k,**m;
  tceil m[20][80];
} tlevel;

// predefined levels
extern tlevel pre_lvl[];
extern int pre_levels;
extern char *terrains[];

extern void level_make(tlevel *, int); // depth
extern void level_paint(tlevel *, int); // show even unknowns?
extern void level_load(FILE *, tlevel *);
extern int trace_line(int, int, int, int, int, tlevel *);

#endif
