// match.h // // $Id: match.h,v 1.2 2003/02/05 06:20:59 jake Exp $ // #include "copyright.h" #ifndef M_MATCH_H #define M_MATCH_H typedef struct match_state MSTATE; struct match_state { int confidence; /* How confident are we? CON_xx */ int count; /* # of matches at this confidence */ int pref_type; /* The preferred object type */ bool check_keys; /* Should we test locks? */ dbref absolute_form; /* If #num, then the number */ dbref match; /* What I've found so far */ dbref player; /* Who is performing match */ char *string; /* The string to search for */ }; /* Match functions * Usage: * init_match(player, name, type); * match_this(); * match_that(); * ... * thing = match_result() */ extern void init_match(dbref, const char *, int); extern void init_match_check_keys(dbref, const char *, int); extern void match_player(void); extern void match_absolute(void); extern void match_me(void); extern void match_here(void); extern void match_possession(void); extern void match_neighbor(void); extern void match_exit(void); extern void match_exit_with_parents(void); extern void match_carried_exit(void); extern void match_carried_exit_with_parents(void); extern void match_master_exit(void); extern void match_everything(int); extern dbref match_result(void); extern dbref last_match_result(void); extern dbref match_status(dbref, dbref); extern dbref noisy_match_result(void); extern void save_match_state(MSTATE *); extern void restore_match_state(MSTATE *); extern void match_zone_exit(void); extern dbref match_thing(dbref player, char *name); extern dbref match_thing_quiet(dbref player, char *name); extern void safe_match_result(dbref it, char *buff, char **bufc); #define MAT_NO_EXITS 1 /* Don't check for exits */ #define MAT_EXIT_PARENTS 2 /* Check for exits in parents */ #define MAT_NUMERIC 4 /* Check for un-#ified dbrefs */ #define MAT_HOME 8 /* Check for 'home' */ #endif // !M_MATCH_H