/* $Header: /belch_a/users/rearl/tinymuck/include/RCS/externs.h,v 1.12 90/09/18 08:06:03 rearl Exp $ * * $Log: externs.h,v $ * Revision 1.12 90/09/18 08:06:03 rearl * Added hash tables for players and primitives. * * Revision 1.11 90/09/13 06:33:47 rearl * do_dump() and do_toad() prototypes changed. * * Revision 1.10 90/09/10 02:24:17 rearl * Changed NL line termination to CR/LF pairs. * * Revision 1.9 90/09/01 06:03:56 rearl * Put do_drop() back like it was. * * Revision 1.8 90/08/27 14:06:53 rearl * Added support for environments: @trace, mods to drop and @dig commands. * * Revision 1.7 90/08/15 03:11:00 rearl * Messed around with pronoun_substitute, just like in stringutil.c. * * Revision 1.6 90/08/06 02:47:24 rearl * Put can_link() back, added restricted() from predicates.c. * * Revision 1.5 90/07/30 00:10:47 rearl * Added @owned command. * * Revision 1.4 90/07/29 17:18:22 rearl * Fixed the functions containing the = bug. * * Revision 1.3 90/07/20 11:43:06 casie * Added new function declarations for log.c * * Revision 1.2 90/07/19 23:14:18 casie * Removed log comments from top. * */ #include "copyright.h" #include "db.h" /* Prototypes for externs not defined elsewhere */ extern char match_args[]; /* from db.c */ extern struct plist * new_prop(); extern void free_prop(struct plist *); extern int number(const char *); extern void putproperties(FILE *, struct plist *); extern void putprop(FILE *, struct plist *); extern void free_line(struct line *); extern void db_free_object(dbref); extern void db_clear_object(dbref); extern void macrodump(struct macrotable *, FILE *); extern void macroload(); /* From create.c */ extern void do_open(dbref, const char *, const char *); extern void do_link(dbref, const char *, const char *); extern void do_dig(dbref, const char *, const char *); extern void do_create(dbref, char *, int); extern void do_prog(dbref, const char *); extern int unset_source(dbref, dbref, dbref); /* from edit.c */ extern struct macrotable * new_macro(const char *, const char *, dbref); extern void match_and_list(dbref, const char *, char *); extern struct line * read_program(dbref); /* From game.c */ extern void do_dump(dbref, const char *); extern void do_shutdown(dbref); extern void process_command(dbref, const char *, dbref, int); extern dbref global_cause; extern dbref global_trigger; /* From hashtab.c */ extern hash_data * find_hash(const char *, hash_tab *, unsigned); extern hash_entry * add_hash(const char *, hash_data, hash_tab *, unsigned); extern int free_hash(const char *, hash_tab *, unsigned); extern void kill_hash(hash_tab *, unsigned); /* From help.c */ extern void spit_file(dbref, const char *); extern void do_help(dbref); extern void do_news(dbref); /* From look.c */ extern void look_room(dbref, dbref); extern void do_look_around(dbref); extern void do_look_at(dbref, const char *); extern void do_examine(dbref, const char *); extern void do_inventory(dbref); extern void do_find(dbref, const char *, const char *); extern void do_owned(dbref, const char *, const char *); extern void do_trace(dbref, const char *, int); extern void exec_or_notify(dbref, dbref, const char *); /* From move.c */ extern void moveto(dbref, dbref); extern void enter_room(dbref, dbref, dbref); extern void send_home(dbref); extern int parent_loop_check(dbref, dbref); extern int can_move(dbref, const char *); extern void do_move(dbref, const char *); extern void do_get(dbref, const char *); extern void do_drop(dbref, const char *); #ifdef RECYCLE extern void do_recycle(dbref, const char *); #endif /* From player.c */ extern dbref lookup_player(const char *); extern void do_password(dbref, const char *, const char *); extern void add_player(dbref); extern void delete_player(dbref); /* From predicates.c */ extern int can_link_to(dbref, object_flag_type, dbref); extern int can_link(dbref, dbref); extern int could_doit(dbref, dbref); extern int can_doit(dbref, dbref, const char *); extern int can_see(dbref, dbref, int); extern int controls(dbref, dbref); extern int restricted(dbref, dbref, object_flag_type); extern int payfor(dbref, int); extern void do_switch(dbref, char *, char *, dbref); /* From rob.c */ extern void do_kill(dbref, const char *, int); extern void do_give(dbref, const char *, int); /* extern void do_rob(dbref, const char *); */ /* From set.c */ extern void do_name(dbref, const char *, char *); extern void do_lock(dbref, const char *, const char *); extern void do_unlock(dbref, const char *); extern void do_unlink(dbref, const char *); extern void do_chown(dbref, const char *, const char *); extern void do_set(dbref, const char *, const char *); extern void do_attr(dbref, const char *, const char *, const char *); extern void do_field(dbref, const char *, const char *, dbref); /* From speech.c */ extern void do_wall(dbref, const char *); extern void do_gripe(dbref, const char *); extern void do_say(dbref, const char *); extern void do_page(dbref, const char *, const char *); extern void notify_except(dbref, dbref, const char *); /* From stringutil.c */ extern int string_compare(const char *, const char *); extern int string_prefix(const char *, const char *); extern const char * string_match(const char *, const char *); extern const char * pronoun_substitute(dbref, char *, dbref); extern char *alloc_string(const char *); extern char *alloc_ec_string(const char *); /* From utils.c */ extern int member(dbref, dbref); extern dbref remove_first(dbref, dbref); /* From wiz.c */ extern void do_teleport(dbref, const char *, const char *); extern void do_force(dbref, const char *, char *); extern void do_stats(dbref, const char *); extern void do_toad(dbref, const char *, const char *); extern void do_boot(dbref, const char *); extern void do_pcreate(dbref, const char *, const char *); /* From boolexp.c */ extern int eval_boolexp(dbref, struct boolexp *, dbref); extern struct boolexp * parse_boolexp(dbref, const char *); extern struct boolexp * copy_bool(struct boolexp *); /* From unparse.c */ extern const char * unparse_object(dbref, dbref); extern const char * unparse_boolexp(dbref, struct boolexp *); /* from property.c */ extern void add_property(dbref, const char *, const char *); extern void add_attr(dbref, const char *, const char *); extern void remove_property(dbref, const char *); extern int has_property(dbref, const char *, const char *); extern int has_property_strict(dbref, const char *, const char *); extern char * get_property_class(dbref, const char *); extern char * get_attr(dbref, const char *); extern int genderof(dbref); extern struct plist * copy_prop(dbref); extern struct plist * copy_attr(dbref); /* From compress.c */ #ifdef COMPRESS extern const char * compress(const char *); extern const char * uncompress(const char *); extern void init_compress(); #endif /* COMPRESS */ /* From edit.c */ extern void interactive(dbref, const char *); /* From compile.c */ extern void do_compile(dbref, dbref); extern void clear_primitives(); extern void init_primitives(); /* From interp.c */ extern int interp_loop(dbref, dbref, struct frame *); extern int interp(dbref, dbref, dbref); /* declared in log.c */ extern void log_error(); extern void log_gripe(); extern void log_muf(); extern void log_conc(); extern void log_other(); extern void make_sigio(int); /* from speech.c */ extern void grow_ears(dbref); extern void lose_ears(dbref); /* from fifoq.c */ extern void trigobj(dbref, const char *, dbref); extern void queue_command(dbref, const char *, dbref); extern const char * trash_braces(const char *); extern char *wptr[10]; extern char *awptr[10]; /* extern char *check_func(const char *arg); */ /* from func.c */ extern char * check_arg(char *, dbref, dbref); extern void exec(char **, char *, dbref, dbref, int); /* from flags.c */ extern object_flag_type filter_type(object_flag_type); extern object_flag_type lookup_flag(const char *); extern const char * unparse_flag(object_flag_type); extern const char * unparse_flag_short(object_flag_type); /* from wait_cmd.c */ extern void do_halt(dbref, const char *); extern void halt_long(dbref); /* from case.c */ extern const char *uppercase; extern const char *lowercase;