circlemud_squared_0.5.153/cnf/
circlemud_squared_0.5.153/etc/
circlemud_squared_0.5.153/etc/etc/
circlemud_squared_0.5.153/etc/house/
circlemud_squared_0.5.153/etc/misc/
circlemud_squared_0.5.153/etc/plralias/A-E/
circlemud_squared_0.5.153/etc/plralias/F-J/
circlemud_squared_0.5.153/etc/plralias/K-O/
circlemud_squared_0.5.153/etc/plralias/P-T/
circlemud_squared_0.5.153/etc/plralias/U-Z/
circlemud_squared_0.5.153/etc/plralias/ZZZ/
circlemud_squared_0.5.153/etc/plrobjs/
circlemud_squared_0.5.153/etc/plrobjs/A-E/
circlemud_squared_0.5.153/etc/plrobjs/F-J/
circlemud_squared_0.5.153/etc/plrobjs/K-O/
circlemud_squared_0.5.153/etc/plrobjs/P-T/
circlemud_squared_0.5.153/etc/plrobjs/U-Z/
circlemud_squared_0.5.153/etc/plrobjs/ZZZ/
circlemud_squared_0.5.153/etc/text/
circlemud_squared_0.5.153/etc/text/help/
circlemud_squared_0.5.153/src/util/
circlemud_squared_0.5.153/src/util/worldconv/
/* ************************************************************************
*   File: handler.h                                     Part of CircleMUD *
*  Usage: header file: prototypes of handling and utility functions       *
*                                                                         *
*  All rights reserved.  See license.doc for complete information.        *
*                                                                         *
*  Copyright (C) 1993, 94 by the Trustees of the Johns Hopkins University *
*  CircleMUD is based on DikuMUD, Copyright (C) 1990, 1991.               *
************************************************************************ */

#ifndef __HANDLER_H__
#define __HANDLER_H__

/* handling the affected-structures */
void	effectData_total(charData_t *ch);
void	effectData_modify(charData_t *ch, byte loc, sbyte mod, bitvector_t bitv, bool add);
void	effectData_toChar(charData_t *ch, effectData_t *af);
void	effectData_remove(charData_t *ch, effectData_t *af);
void	effectData_fromChar(charData_t *ch, int type);
bool	affected_by_spell(charData_t *ch, int type);
void	effectData_join(charData_t *ch, effectData_t *af,
bool add_dur, bool avg_dur, bool add_mod, bool avg_mod);


/* utility */
const char *money_desc(int amount);
itemData_t *create_money(int amount);
bool isfullname(const char *str, const char *namelist);
bool isname(const char *str, const char *namelist);
char	*fname(const char *namelist);
int	get_number(char **name);

/* ******** objects *********** */

void	itemData_toChar(itemData_t *object, charData_t *ch);
void	itemData_fromChar(itemData_t *object);

bool	invalid_align(charData_t *ch, itemData_t *obj);

void	itemData_toRoom(itemData_t *object, roomData_t *room);
void	itemData_fromRoom(itemData_t *object);
void	itemData_toItem(itemData_t *obj, itemData_t *obj_to);
void	itemData_fromItem(itemData_t *obj);
void	object_list_new_owner(itemData_t *list, charData_t *ch);

void	itemData_extract(itemData_t *obj);

/* ******* characters ********* */

charData_t *get_char_room(char *name, int *num, roomData_t *room);
charData_t *get_char_num(mobileVnum_t nr);

/* find if character can see */
charData_t *get_player_vis(charData_t *ch, char *name, int *number, int inroom);
charData_t *get_char_vis(charData_t *ch, char *name, int *number, int where);
charData_t *get_char_room_vis(charData_t *ch, char *name, int *number);
charData_t *get_char_world_vis(charData_t *ch, char *name, int *number);

itemData_t *get_item_in_list_vis(charData_t *ch, char *name, int *number, itemData_t *list);
itemData_t *get_item_vis(charData_t *ch, char *name, int *num);
itemData_t *get_item_in_equip_vis(charData_t *ch, char *arg, int *number, itemData_t *equipment[]);
int         get_item_pos_in_equip_vis(charData_t *ch, char *arg, int *num, itemData_t *equipment[]);


/* find all dots */

int	find_all_dots(char *arg);

#define FIND_INDIV	0
#define FIND_ALL	1
#define FIND_ALLDOT	2


/* Generic Find */

int	generic_find(char *arg, bitvector_t bitvector, charData_t *ch,
		charData_t **tar_ch, itemData_t **tar_obj);

#define FIND_CHAR_ROOM     BIT_00
#define FIND_CHAR_WORLD    BIT_01
#define FIND_ITEM_INV       BIT_02
#define FIND_ITEM_ROOM      BIT_03
#define FIND_ITEM_WORLD     BIT_04
#define FIND_ITEM_EQUIP     BIT_05


/* prototypes from crash save system */

int	Crash_delete_file(char *name);
int	Crash_delete_crashfile(charData_t *ch);
int	Crash_clean_file(char *name);
void	Crash_listrent(charData_t *ch, char *name);
int	Crash_load(charData_t *ch);
void	Crash_crashsave(charData_t *ch);
void	Crash_idlesave(charData_t *ch);
void	Crash_save_all(void);

/* prototypes from fight.c */
void	charData_setFighting(charData_t *ch, charData_t *victim);
void	charData_stopFighting(charData_t *ch);
void	hit(charData_t *ch, charData_t *victim, int type);
void	forget(charData_t *ch, charData_t *victim);
void	remember(charData_t *ch, charData_t *victim);
int	damage(charData_t *ch, charData_t *victim, int dam, int attacktype);
int	skill_message(int dam, charData_t *ch, charData_t *vict,
		      int attacktype);

#endif /* __HANDLER_H__ */