#ifndef _OBJ_H_17dc2c3d_ #define _OBJ_H_17dc2c3d_ #include #include "structs.h" extern void format_inv_line(INVOBJ *, FILE *); extern INVOBJ *sort_inv(INVOBJ *, int (*)(INVOBJ *, INVOBJ *)); extern void objfree(OBJ *); extern void invobjfree(INVOBJ *); extern int inv_remove(INVENT *, INVOBJ *); extern int inv_present(INVENT *, OBJ *); extern void inv_init(INVENT *, INVTYPE, ...); extern INVOBJ *inventory_split_n(INVOBJ *, int, int); extern int showinvent_all(INVOBJ *); extern void show_inventory(INVENT *, const char *, int (*)(INVOBJ *)); extern INVOBJ *pick_inventory(INVENT *, const char *, int (*)(INVOBJ *)); extern void mergeinv(INVENT *, INVENT *); extern INVOBJ *inv_move_1(INVENT *, INVOBJ *, INVENT *); extern int find_xwi(INVENT *); extern void initobj(void); extern void destroy_inv(INVENT *); extern OBJ *obj_make(int type); extern INVOBJ *add_obj_to_inv(OBJ *, INVENT *); extern OBJ *std_split(OBJ *, int); extern INVOBJ *inv_scan(INVENT *, int (*)(INVOBJ *)); extern int invobj_unidentified(INVOBJ *); extern void identify_it(INVOBJ *, int); extern OBJ *remove_obj_from_invobj(int, INVOBJ *); extern void pline_invobj(INVOBJ *); #endif