

struct room_data *get_room(int x,int y,int z,int room);
struct room_data *create_void_room(int x,int y,int z,int room);
struct room_data *get_adjacent_room(int (*x),int (*y),int (*z),int (*room),struct room_data *,int dir);
struct object_data *clone_object(int number, char mode);
struct object_data *get_proto_object(int number);
struct object_data *check_carried(struct char_data *, char *);
struct char_data *get_player(char *);
struct char_data *get_xuser(struct char_data *, char *);
struct char_data *get_proto_mob(int number);
struct char_data *get_ch_in_room(struct char_data *ch, char *name);
struct char_data *get_pkiller(struct char_data *mob);
struct char_data *get_aggr_victim(struct char_data *mob);
struct char_data *clone_mob(int number);


void  check_health(void);
void  activate_regen(int num);
void  regenerate(struct regen_data *item);
void  slow_cook_item(union any, char);
void  rem_uncooked_item(union any item, char);
void  rem_cooked_item(void);
void  do_heal(struct char_data *ch, char *arg);
void  do_buy(struct char_data *ch,char *arg);
void  do_sell(struct char_data *ch,char *arg);
void  do_value(struct char_data *ch,char *arg);
void  do_build(struct char_data *ch,char *arg);
void  do_create(struct char_data *ch,char *arg);
void  build_name(struct char_data *ch,char *arg);
void  build_room(struct char_data *ch,char *arg);
void  build_delete(struct char_data *ch,char *arg);
void  build_exit(struct char_data *ch,char *arg);
void  build_leave(struct char_data *ch,char *arg);
void  build_save(struct char_data *ch,char *arg);
void  build_help(struct char_data *ch,char *arg);
void  build_parser(struct char_data *ch,char *arg);
void  build_exit(struct char_data *ch,char *arg);
void  build_desc(struct char_data *ch,char *arg);
void  do_map(struct char_data *ch,char *arg);
void  end_fight(struct char_data *,struct char_data *);
void  do_clone(struct char_data *,char *,int);
void  obj_weight_adjust(struct object_data *, int weight);
void  char_weight_adjust(struct char_data *, int weight);
void  do_private(struct char_data *ch, char *arg);
void  do_invite(struct char_data *ch, char *arg);
void  do_open(struct char_data *ch,char *arg,char mode);
void  do_unlock(struct char_data *ch,char *arg,char mode);
void  command_parser(struct char_data *ch,char *arg);
void  class_2_string(struct char_data *ch,char class);
void  sex_2_string(struct char_data *ch,char class);
void  align_2_string(struct char_data *ch,char class);
void  show_mob(struct char_data *ch, struct char_data *mob);
void  show_room(struct char_data *ch, struct room_data *room);
void  show_object(struct char_data *ch, struct object_data *object);
void  save_object(struct object_data *,char,int);
void  game_stats(struct char_data *ch);
void  update_char(struct char_data *ch);
void  close_socket(struct descriptor_data *d);
void  interpreter(struct descriptor_data *, char *);
void  do_attack(struct char_data *ch, char *arg);
void  mob_movement(struct char_data *mob);
void  change_status(struct char_data *ch, int status);
void  do_mob_wield(struct char_data *mob);
void  catch_zombie(void);
void  create_corpse(struct char_data *corpse, struct char_data *killer);
void  do_mob_flags(void);
void  move_mobs(void);
void  do_violence(void);
void  game_loop(void);
void  do_join(struct char_data *ch, char *arg);
void  con_qclass(struct char_data *ch, char *arg);
void  con_qsex(struct char_data *ch, char *arg);
void  con_pwdcnf(struct char_data *ch, char *arg);
void  con_pwdnrm(struct char_data *ch, char *arg);
void  con_pwdget(struct char_data *ch, char *arg);
void  con_name(struct char_data *ch, char *arg);
void  con_nmecnf(struct char_data *ch, char *arg);
void  index_zones(void);
void  count_commands(void);
void  do_who(struct char_data *ch);
void  char_2_store(struct char_data *ch, struct char_save_data *st);
void  char_2_room(struct char_data *,struct room_data *, char *);
void  char_from_room(struct char_data *ch, char *msg);
void  load_mobiles(void);
void  roll_char(struct char_data *ch);
void  do_tohand(struct char_data *ch, char *arg);
void  do_reroll(struct char_data *ch, char *arg);
void  do_exit(struct char_data *ch);
void  do_deaddrop(struct char_data *ch, char *arg); // CRTH  - When ya die!
void  do_drop(struct char_data *ch, char *arg);
void  do_save(struct char_data *ch);
void  do_score(struct char_data *ch);
void  do_quit(struct char_data *ch, char *arg);
void  do_shutdown(struct char_data *ch, char *arg);
void	do_wield(struct char_data *ch, char *arg);
void	do_direction(struct char_data *ch,int direction);
void	do_look(struct char_data *ch, char *arg);
void	do_say(struct char_data *ch, char *arg);
void	do_position(struct char_data *ch, char *arg);
void  do_invis(struct char_data *ch, char *arg);
void  do_gossip(struct char_data *ch, char *arg);
void  do_tell(struct char_data *ch, char *arg);
void  do_give(struct char_data *ch, char *arg);
void	do_no_msg(struct char_data *ch, char *arg);
void	do_commands(struct char_data *ch);
void	do_inventory(struct char_data *ch);
void	do_equipment(struct char_data *ch);
void	do_remove(struct char_data *ch, char *arg);
void	do_follow(struct char_data *ch, char *arg);
void  game_stats(struct char_data *ch);
void	do_group(struct char_data *ch);
void	do_ungroup(struct char_data *ch);
void  dump_leader(struct char_data *ch);
void  disband_followers(struct char_data *ch);
void  follow_leader(struct char_data *ch, struct char_data *pl);
void  obj_affects(struct char_data *ch, struct object_data *obj, char mode);
void  send_2_xcept(struct char_data *ch, struct char_data *pl, char invis_chk, char *msg);
void	send_2_char(struct char_data *ch,struct char_data *pl,char invis_msg,char *txt);
void  send_2_room(struct char_data *,char,char *);
void  send_2_inc(struct char_data *,char *);
void  send_2_all(struct char_data *ch, char *msg);
void	follow_leader(struct char_data *ch, struct char_data *pl);
void	do_restrict(struct char_data *ch, char *arg);
void	get_flags(char *text, struct char_data *pl);
void  do_list(struct char_data *ch, char *arg);
void	do_stat(struct char_data *ch, char *arg);
void	do_goto(struct char_data *ch, char *arg);
void	do_show(struct char_data *ch, char *arg);
void	do_pset(struct char_data *ch, char *arg);
void	do_emote(struct char_data *ch, char *arg);
void	do_wear(struct char_data *ch, char *arg);
void	do_title(struct char_data *ch, char *arg);
void	do_attack(struct char_data *ch, char *arg);
void	do_pardon(struct char_data *ch, char *arg);
void	do_flee(struct char_data *ch);
void  close_socket(struct descriptor_data *d);
void  clear_char(struct char_data *ch);
void  load_objects(void);
void  boot_world(void);
void  save_all(void);
void  kill_char(struct char_data *, char *);
void  do_who(struct char_data *ch);
void  do_look(struct char_data *ch, char *arg);
void  look_at(struct char_data *ch, struct char_data *pl);
void  save_char(struct char_data *ch);
void  store_2_char(struct char_save_data *st, struct char_data *ch);

char *str_dup(char *string);
char *load_player_file(void);
char *cprintf(char *,const char *, ...);
char *check_mob(struct char_data *mob);
char *file_2_mob(struct char_data *mob,FILE *fp);
char *get_room_flags(struct room_data *room, FILE *fp);
char *file_2_room(struct room_data *room, int zone, FILE *fp);
char *file_2_object(struct object_data *object, FILE *fp);
char create_room(struct char_data *,int x,int y,int z,int room);

int  valid_exit(struct char_data *ch, struct exit_data *exit);
int  load_char(char *name, struct char_save_data *char_element);
int  check_can_wear(struct char_data *ch, struct object_data *object);
int  obj_cmp(char *name, struct object_data *object);
int  obj_wear(struct char_data *ch, struct object_data *object);
int  obj_2_obj(struct object_data *source, struct object_data *target);
int  obj_2_char(struct object_data *object, struct char_data *ch);
int  obj_2_room(struct object_data *,struct room_data *);
int  obj_from_obj(struct object_data *);
int  obj_from_char(struct object_data *);
int  obj_from_room(struct object_data *);
int  chk_obj_worn(struct object_data *, int);
int  delete_object(struct object_data *obj, char mode);
int  restore_object(struct char_data *ch, struct char_save_data *st, struct object_data *obj, int c);
int  init_char(struct char_data *ch);
int  create_char_entry(char *name);
int  create_zone_entry(void);
int  exit_cmp(char *name, struct room_data *room);
int  see_char_chk(struct char_data *ch, struct char_data *pl);
int  shrt_cmp(char *arg, char *command);
int  get_arg(char *store, char *arg, char which);
int  get_target(char *store, char *arg, char which);
int  send_2_output(char *mesg, struct descriptor_data *d);
int  can_take(struct char_data *ch, struct object_data *object, int mode);
int  do_get(struct char_data *ch, char *arg);
int  show_people(struct room_data *room, struct char_data *ch);
int  get_zone(int x,int y,int z);
int  match_key(struct char_data *ch, int key);
int  get_none_room(int x,int y,int z,int room);
int  delete_void_room(struct room_data *room);
int  valid_room(struct char_data *ch,struct room_data *room);
int  file_2_exit_flags(struct room_data *room, FILE *fp);
int  file_2_string(char *name, char **buf);
int  get_command(char *arg);
int  get_bcommand(char *arg);
int  _parse_name(char *, char *);
int  load_zones(int zone);
int  str_cmp(char *, char *);
int  get_which(char source[]);
int  _random(int die, int sides);
int  _numeric(int *(target), char *string);
int  mob_cmp(char *name, struct char_data *mob);
int  get_weap_dam(struct object_data *weapon);
int  get_void_room(int x, int y, int z, int r);
int  _power(int x);
int  init_socket(int);
int  new_descriptor(void);
int  new_connection(void);
int  my_write(int desc, char *txt);
int  process_input(struct descriptor_data *t);
int  process_output(struct descriptor_data *t);
int  get_input(struct descriptor_data *d, char *dest);
int  get_align_flag(char *name);
int  get_sex_flag(char *name);
int  get_class_flag(char *name);
int  get_mob_sex(char *name);
int  get_mob_class(char *name);
int  get_mob_flag(char *name);
int  get_mob_char(char *name);
int  get_mob_long(char *name);
int  chk_obj_type(struct object_data *obj, int c);
int  find_name(char *name);
int  init_world(int);
int  read_string(char *target, FILE *fp);
int  init_mob(struct char_data *mob);

///CRTH
void	amend_TODAY(void);
void	chk_Weather(void);
void	WeatherChange(void);
void	SetWeather(void);
void	SetWeatherRep(void);
void	do_WeatherRep(struct char_data *ch);
void	do_date(struct char_data *ch);
void	do_time(struct char_data *ch);
void	check_actors(void);

void	LoadSeasonDate(void);
char	SaveSeasonDate(void);
void	do_savedate(struct char_data *ch);
void	send_weather(void);

void	do_drink(struct char_data *ch, char *arg);
int   obj_drink(struct char_data *ch, struct object_data *object);
void	DrunkActor(struct char_data *ch);
void	PoisondActor(struct char_data *ch);
void	DiseasedActor(struct char_data *ch);
void	do_eat(struct char_data *ch, char *arg);
int	obj_eat(struct char_data *ch,struct object_data *object);
void	ChkNurishment(struct char_data *ch);

void	do_scan(struct char_data *ch);
void	do_detox(struct char_data *ch,char *arg);
void	do_con(struct char_data *ch,char *arg);
char	ChkExp(struct char_data *ch);
void	do_skills(struct char_data *ch);
void	do_giveSkill(struct char_data *ch,char *arg);
void	do_lstskills(struct char_data *ch,char *arg);
void	do_Xskills(struct char_data *ch);
int	HasSkill(struct char_data *ch,char *skill);
int	IsSkill(char *skill);
void	do_use_skill(struct char_data *ch,char *arg);
int	GetSkillCharIndex(struct char_data *ch,char *skill);
int	GetSkillIndex(char *skill);
void	ApplySkill(struct char_data *ch,int idx);
void	DoSkill(struct char_data *ch,char *skill);
int	CanUseSkillOn(struct char_data *ch,char *skill,char *arg);
void	UseSkillOn(struct char_data *ch,char *skill,char *arg);
int	CanHaveSkill(struct char_data *ch,char *skill);
void	GiveSkill(struct char_data *ch,int idx);
int	GetLastSkillIndex(void);

void	check_room_events(void);
void	UseSkillIn(struct char_data *ch,char *skill);
void	do_send(struct char_data *ch,char *arg);

void	do_autoloc(struct char_data *ch);
void	do_autoloot(struct char_data *ch);
void	con_reroll(struct char_data *ch,char *arg);
void	disp_classes(struct char_data *ch);
//// CRTH.

