handler.h
1 /* ************************************************************************ 2 * File: handler.h Part of CircleMUD * 3 * Usage: header file: prototypes of handling and utility functions * 4 * * 5 * All rights reserved. See license.doc for complete information. * 6 * * 7 * Copyright (C) 1993, 94 by the Trustees of the Johns Hopkins University * 8 * CircleMUD is based on DikuMUD, Copyright (C) 1990, 1991. * 9 ************************************************************************ */ 10 11 /* handling the affected-structures */ 12 void affect_total(struct char_data *ch); 13 void affect_modify(struct char_data *ch, byte loc, sbyte mod, bitvector_t bitv, bool add); 14 void affect_to_char(struct char_data *ch, struct affected_type *af); 15 void affect_remove(struct char_data *ch, struct affected_type *af); 16 void affect_from_char(struct char_data *ch, int type); 17 bool affected_by_spell(struct char_data *ch, int type); 18 void affect_join(struct char_data *ch, struct affected_type *af, 19 bool add_dur, bool avg_dur, bool add_mod, bool avg_mod); 20 21 22 /* utility */ 23 const char *money_desc(int amount); 24 struct obj_data *create_money(int amount); 25 int isname(const char *str, const char *namelist); 26 char *fname(const char *namelist); 27 int get_number(char **name); 28 29 /* ******** objects *********** */ 30 31 void obj_to_char(struct obj_data *object, struct char_data *ch); 32 void obj_from_char(struct obj_data *object); 33 34 void equip_char(struct char_data *ch, struct obj_data *obj, int pos); 35 struct obj_data *unequip_char(struct char_data *ch, int pos); 36 int invalid_align(struct char_data *ch, struct obj_data *obj); 37 38 void obj_to_room(struct obj_data *object, room_rnum room); 39 void obj_from_room(struct obj_data *object); 40 void obj_to_obj(struct obj_data *obj, struct obj_data *obj_to); 41 void obj_from_obj(struct obj_data *obj); 42 void object_list_new_owner(struct obj_data *list, struct char_data *ch); 43 44 void extract_obj(struct obj_data *obj); 45 46 /* ******* characters ********* */ 47 48 struct char_data *get_char_room(char *name, int *num, room_rnum room); 49 struct char_data *get_char_num(mob_rnum nr); 50 51 void char_from_room(struct char_data *ch); 52 void char_to_room(struct char_data *ch, room_rnum room); 53 void extract_char(struct char_data *ch); 54 void extract_char_final(struct char_data *ch); 55 void extract_pending_chars(void); 56 57 /* find if character can see */ 58 struct char_data *get_player_vis(struct char_data *ch, char *name, int *number, int inroom); 59 struct char_data *get_char_vis(struct char_data *ch, char *name, int *number, int where); 60 struct char_data *get_char_room_vis(struct char_data *ch, char *name, int *number); 61 struct char_data *get_char_world_vis(struct char_data *ch, char *name, int *number); 62 63 struct obj_data *get_obj_in_list_num(int num, struct obj_data *list); 64 struct obj_data *get_obj_num(obj_rnum nr); 65 struct obj_data *get_obj_in_list_vis(struct char_data *ch, char *name, int *number, struct obj_data *list); 66 struct obj_data *get_obj_vis(struct char_data *ch, char *name, int *num); 67 struct obj_data *get_obj_in_equip_vis(struct char_data *ch, char *arg, int *number, struct obj_data *equipment[]); 68 int get_obj_pos_in_equip_vis(struct char_data *ch, char *arg, int *num, struct obj_data *equipment[]); 69 70 71 /* find all dots */ 72 73 int find_all_dots(char *arg); 74 75 #define FIND_INDIV 0 76 #define FIND_ALL 1 77 #define FIND_ALLDOT 2 78 79 80 /* Generic Find */ 81 82 int generic_find(char *arg, bitvector_t bitvector, struct char_data *ch, 83 struct char_data **tar_ch, struct obj_data **tar_obj); 84 85 #define FIND_CHAR_ROOM (1 << 0) 86 #define FIND_CHAR_WORLD (1 << 1) 87 #define FIND_OBJ_INV (1 << 2) 88 #define FIND_OBJ_ROOM (1 << 3) 89 #define FIND_OBJ_WORLD (1 << 4) 90 #define FIND_OBJ_EQUIP (1 << 5) 91 92 93 /* prototypes from crash save system */ 94 95 int Crash_delete_file(char *name); 96 int Crash_delete_crashfile(struct char_data *ch); 97 int Crash_clean_file(char *name); 98 void Crash_listrent(struct char_data *ch, char *name); 99 int Crash_load(struct char_data *ch); 100 void Crash_crashsave(struct char_data *ch); 101 void Crash_idlesave(struct char_data *ch); 102 void Crash_save_all(void); 103 104 /* prototypes from fight.c */ 105 void set_fighting(struct char_data *ch, struct char_data *victim); 106 void stop_fighting(struct char_data *ch); 107 void hit(struct char_data *ch, struct char_data *victim, int type); 108 void forget(struct char_data *ch, struct char_data *victim); 109 void remember(struct char_data *ch, struct char_data *victim); 110 int damage(struct char_data *ch, struct char_data *victim, int dam, int attacktype); 111 int skill_message(int dam, struct char_data *ch, struct char_data *vict, 112 int attacktype);