#ifndef ___OBJECT_H
#define ___OBJECT_H
#include<stdio.h>

typedef struct {
  unsigned int t; // type, id
  unsigned long i;
  unsigned int w,c; // vaha, cena
  unsigned int f; // flagy
} tobj;

#include"monster.h"
#include"player.h"
//#include"level.h"

typedef struct {
  char name[32];
  char names[33];
  unsigned int t; // type
  unsigned int w,c; // vaha, cena
  unsigned int a,d; // attack, defense
  unsigned int at; // ...when thrown
  unsigned int an; // a==0, an==1
  char tr; // symbol
  unsigned int cl; // color
  char *descr;
} tobjtmp;

// predefined objects
extern tobjtmp pre_obj[];
extern int pre_objs;
extern char *obj_cat[];
extern int obj_cats;

extern void object_clone(unsigned long, tobj *); // type, tid
extern void money_make(unsigned int, tobj *);
extern void object_paint(tobj *, int, int); // x,y
extern void object_notice(tobj *);
extern void object_get(tlevel *, tmonster *); // x, y
extern void object_drop(tlevel *, tmonster *, tobj *); // x, y
extern void object_menu(tobj **, int, unsigned long *, int); // last == filter, -1 = everything

#endif
