/*___________________________________________________________________________*
)()( DalekenMUD 1.12 (C) 2000 )()(
`][' by Martin Thomson, Lee Brooks, `]['
|| Ken Herbert and David Jacques ||
|| ----------------------------------------------------------------- ||
|| Envy Diku Mud improvements copyright (C) 1994 by Michael Quan, ||
|| David Love, Guilherme 'Willie' Arnold, and Mitchell Tse. ||
|| Merc Diku Mud improvments copyright (C) 1992, 1993 by Michael ||
|| Chastain, Michael Quan, and Mitchell Tse. ||
|| Original Diku Mud copyright (C) 1990, 1991 ||
|| by Sebastian Hammer, Michael Seifert, Hans Henrik St{rfeldt, ||
|| Tom Madsen, and Katja Nyboe. ||
|| ----------------------------------------------------------------- ||
|| Any use of this software must follow the licenses of the ||
|| creators. Much time and thought has gone into this software and ||
|| you are benefitting. We hope that you share your changes too. ||
|| What goes around, comes around. ||
|| ----------------------------------------------------------------- ||
|| glob.h ||
|| Global data structures. ||
*_/<>\_________________________________________________________________/<>\_*/
/*
* Global constant tables.
*/
extern const struct class_type class_table [MAX_CLASS];
extern const struct cmd_type cmd_table [ ];
extern const struct liq_type liq_table [ ];
extern const struct skill_type skill_table [MAX_SKILL];
extern const struct race_type race_table [MAX_RACE];
extern const struct struckdrunk drunk [ ];
extern const struct wear_stuff wear_table [MAX_WEAR];
extern const struct damage_message dam_table [ ];
extern const struct interpreter_type interpreter_table[ ];
extern const char *const magic_name [ ];
extern const char *const magic_colour [ ];
extern struct pose_index_data pose_table [MAX_CLASS];
extern const char *const dir_name [ ];
extern const int rev_dir [ ];
extern const struct spec_type spec_table [ ];
extern BOARD_DATA board_table [ ];
extern const char *const sector_string [SECT_MAX];
extern const struct limb_loss part_loss_table [ ];
extern const char *const day_name [ ];
extern const char *const month_name [ ];
extern char str_boot_time [ ];
/*
* Global variables.
*/
extern unsigned short port;
extern SOCKET control;
extern bool merc_down;
extern time_t current_time;
extern char str_empty[1];
extern FILE *fpReserve;
extern FILE *fpArea;
extern char strArea[MAX_INPUT_LENGTH];
extern struct sysinfo_type *SysInfo;
extern time_t boot_time;
extern bool fBootDb;
extern unsigned long data_trans_inc;
extern double data_trans;
extern unsigned long data_recv;
#if defined( unix )
extern volatile int last_checkpoint;
#endif
extern char last_command[MAX_INPUT_LENGTH * 2];
extern char log_buf [ ];
extern BAN_DATA *badname_list;
extern BAN_DATA *ban_list;
extern CHAR_DATA *char_list;
extern DESCRIPTOR_DATA *descriptor_list;
extern NOTE_DATA *note_list;
extern OBJ_DATA *object_list;
extern EXIT_DATA *exit_list;
extern CLAN_DATA *clan_list;
extern AREA_DATA *area_first;
extern AREA_DATA *area_last;
extern CLAN_DATA *clan_first;
extern CLAN_DATA *clan_last;
extern HELP_DATA *help_first;
extern HELP_DATA *help_last;
extern HIGHEST_DATA *highest_first;
extern HIGHEST_DATA *highest_last;
extern PLANE_DATA *plane_list;
extern RELIGION_DATA *religion_first;
extern RELIGION_DATA *religion_last;
extern SOCIAL_DATA *social_table[27];
extern SHOP_DATA *shop_first;
extern SHOP_DATA *shop_last;
extern AFFECT_DATA *affect_free;
extern BAN_DATA *ban_free;
extern CHAR_DATA *char_free;
extern DESCRIPTOR_DATA *descriptor_free;
extern EXTRA_DESCR_DATA *extra_descr_free;
extern NOTE_DATA *note_free;
extern OBJ_DATA *obj_free;
extern PC_DATA *pcdata_free;
extern int top_area;
extern int top_mob_index;
extern int top_obj_index;
extern int top_vnum_mob;
extern int top_vnum_obj;
extern int top_vnum_room;
extern bool delete_obj;
extern bool delete_char;
extern int pulse_point; /* from update.c */
extern MOB_INDEX_DATA *mob_index_hash[MAX_KEY_HASH];
extern OBJ_INDEX_DATA *obj_index_hash[MAX_KEY_HASH];
extern ROOM_INDEX_DATA *room_index_hash[MAX_KEY_HASH];
extern MPROG_GLOBAL *global_progs[ MPROG_GLOBAL_HASH ];
extern KILL_DATA kill_table [ ];
extern char *help_greeting;
extern int battle_min;
extern int battle_max;
/*
* These are skill_lookup return values for common skills and spells.
*/
extern int gsn_atemi; /* Daleken */
extern int gsn_avoidance; /* Daleken */
extern int gsn_awen; /* Daleken */
extern int gsn_backstab;
extern int gsn_backhand; /* Daleken */
extern int gsn_barehand; /* Daleken */
extern int gsn_bash;
extern int gsn_berserk; /* by Thelonius */
extern int gsn_blindness;
extern int gsn_blink; /* Daleken */
extern int gsn_breathing; /* by Thelonius */
extern int gsn_brew;
extern int gsn_burn;
extern int gsn_burning_hands; /* Daleken */
extern int gsn_bury_item; /* Daleken */
extern int gsn_carve; /* Daleken */
extern int gsn_catfall; /* Daleken */
extern int gsn_circle; /* by Thelonius */
extern int gsn_chameleon; /* by Thelonius */
extern int gsn_channel; /* Daleken */
extern int gsn_charge; /* Daleken */
extern int gsn_charm_person;
extern int gsn_chill_touch; /* Daleken */
extern int gsn_clan_power; /* Daleken */
extern int gsn_continuous_effect; /* by Incubus */
extern int gsn_domination; /* by Thelonius */
extern int gsn_hex;
extern int gsn_dark_claws; /* Daleken */
extern int gsn_delayed_effect; /* by Incubus */
extern int gsn_detect_traps; /* Daleken */
extern int gsn_dig_item; /* Daleken */
extern int gsn_dirty_fighting; /* Daleken */
extern int gsn_disable_traps; /* Daleken */
extern int gsn_disarm;
extern int gsn_dodge;
extern int gsn_dual; /* by Thelonius */
extern int gsn_elbow; /* Daleken */
extern int gsn_engrave; /* Daleken */
extern int gsn_enhanced_damage;
extern int gsn_explosive; /* needed, Symposium */
extern int gsn_field_dressing; /* Daleken */
extern int gsn_fifth_attack; /* Daleken */
extern int gsn_first_trap; /* Daleken */
extern int gsn_flashing_blades; /* Daleken */
extern int gsn_foci; /* Daleken */
extern int gsn_forage; /* Daleken */
extern int gsn_fortitudes; /* Daleken */
extern int gsn_fourth_attack;
extern int gsn_golden_touch; /* Daleken */
extern int gsn_haggle; /* Daleken */
extern int gsn_hand_of_kaz; /* Daleken */
extern int gsn_headbutt; /* Daleken */
extern int gsn_herbalism; /* Daleken */
extern int gsn_hide;
extern int gsn_impale; /* Daleken */
extern int gsn_heighten; /* by Thelonius */
extern int gsn_invis;
extern int gsn_jab; /* Daleken */
extern int gsn_juggle; /* Daleken */
extern int gsn_kick;
extern int gsn_knee; /* Daleken */
extern int gsn_last_trap; /* Daleken */
extern int gsn_lighten; /* Daleken */
extern int gsn_lucky_blow; /* Daleken */
extern int gsn_magic_lore; /* Daleken */
extern int gsn_mass_invis;
extern int gsn_mass_plague; /* Daleken */
extern int gsn_meditation; /* Daleken */
extern int gsn_mob_lore; /* Daleken */
extern int gsn_modify_armour; /* Daleken */
extern int gsn_move_hidden; /* Daleken */
extern int gsn_mute; /* by Thelonius */
extern int gsn_no_sun; /* Daleken */
extern int gsn_parry;
extern int gsn_peek;
extern int gsn_perm_spell; /* Daleken */
extern int gsn_pick_lock;
extern int gsn_plague; /* Daleken */
extern int gsn_poison;
extern int gsn_poison_weapon; /* by Thelonius */
extern int gsn_quicken; /* Daleken */
extern int gsn_race_tail; /* Daleken */
extern int gsn_racial_fatigue; /* Daleken */
extern int gsn_ram; /* Daleken */
extern int gsn_religious; /* Daleken */
extern int gsn_repair; /* Daleken */
extern int gsn_rescue;
extern int gsn_retaliate; /* Daleken */
extern int gsn_roundhouse; /* Daleken */
extern int gsn_scribe;
extern int gsn_scrolls; /* by Binky / Thelonius */
extern int gsn_second_attack;
extern int gsn_sharpen_weapon; /* Daleken */
extern int gsn_shield_block; /* Daleken */
extern int gsn_shocking_grasp; /* Daleken */
extern int gsn_sleep;
extern int gsn_slit_throat; /* Daleken */
extern int gsn_smash; /* Daleken */
extern int gsn_snare; /* by Binky / Thelonius */
extern int gsn_snapkick; /* Daleken */
extern int gsn_sneak;
extern int gsn_stake;
extern int gsn_stamina; /* Daleken */
extern int gsn_staves; /* by Binky / Thelonius */
extern int gsn_steal;
extern int gsn_stomp; /* Daleken */
extern int gsn_strangle; /* Daleken */
extern int gsn_study; /* Daleken */
extern int gsn_surge; /* Daleken */
extern int gsn_swan_song; /* Daleken */
extern int gsn_taunt; /* Daleken */
extern int gsn_third_attack;
extern int gsn_throw; /* Daleken */
extern int gsn_throw_weapon;
extern int gsn_track; /* Daleken */
extern int gsn_trip; /* Daleken */
extern int gsn_turn_undead;
extern int gsn_two_handed; /* Daleken */
extern int gsn_untangle; /* by Thelonius */
extern int gsn_uppercut; /* Daleken */
extern int gsn_vampiric_bite; /* by Kahn */
extern int gsn_vanish; /* Daleken */
extern int gsn_wands; /* by Binky / Thelonius */
extern int gsn_weapon_skill; /* Daleken */
extern int gsn_weapon_spell; /* Daleken */
extern int gsn_web; /* Daleken */
extern int gsn_whirlwind; /* Daleken */
/*
* Integer Mapping (bit.c)
*/
extern const struct flag_type area_flags[];
extern const struct flag_type sex_flags[];
extern const struct flag_type exit_flags[];
extern const struct flag_type room_flags[];
extern const struct flag_type sector_flags[];
extern const struct flag_type type_flags[];
extern const struct flag_type extra_flags[];
extern const struct flag_type wear_flags[];
extern const struct flag_type act_flags[];
extern const struct flag_type pc_act_flags[];
extern const struct flag_type affect_flags[];
extern const struct flag_type apply_flags[];
extern const struct flag_type magic_flags[];
extern const struct flag_type apply_name_flags[];
extern const struct flag_type wear_loc_strings[];
extern const struct flag_type wear_loc_flags[];
extern const struct flag_type weapon_flags[];
extern const struct flag_type container_flags[];
extern const struct flag_type furniture_flags[];
extern const struct flag_type liquid_flags[];
extern const struct flag_type body_part_flags[];
extern const struct flag_type mud_prog_flags[];
extern const struct flag_type material_flags[];
extern const struct flag_type class_flags[];
extern const struct flag_type direction_flags[];
extern const struct flag_type exit_direction_flags[];
extern const struct flag_type race_perm_flags[];
extern const struct flag_type language_flags[];
extern const struct flag_type clan_type_flags[];
extern const struct flag_type sac_event_flags[];
extern const struct flag_type sysinfo_flags[];
extern const struct flag_type channel_flags[];
extern const struct flag_type event_extra_flags[];
extern const struct flag_type position_flags[];
extern const struct flag_type skill_type_flags[];
extern const struct flag_type mor_type_flags[];