drm/player/
#ifndef GLOBALS_H
#define GLOBALS_H
#ifdef IN_DB_C
#ifdef GLOBAL
#undef GLOBAL
#endif
#ifdef GLOBAL_DEF
#undef GLOABL_DEF
#endif
#define	GLOBAL(str) str
#define GLOBAL_DEF(str, def) str = def

#else
#ifdef GLOBAL
#undef GLOBAL
#endif
#ifdef GLOBAL_DEF
#undef GLOABL_DEF
#endif
#define	GLOBAL(str) extern str
#define GLOBAL_DEF(str, def) extern str
#endif

GLOBAL_DEF ( int mobile_count, 0 );
GLOBAL ( char str_empty[1] );
GLOBAL_DEF ( AREA_DATA * area_first, NULL );
GLOBAL_DEF ( AREA_DATA * area_last, NULL );
GLOBAL_DEF ( SHOP_DATA * shop_last, NULL );

GLOBAL_DEF ( int top_area, 0 );
GLOBAL_DEF ( int top_exit, 0 );
GLOBAL_DEF ( int top_help, 0 );
GLOBAL_DEF ( int top_reset, 0 );
GLOBAL_DEF ( int top_room, 0 );
GLOBAL_DEF ( int top_shop, 0 );
GLOBAL_DEF ( int top_mob_index, 0 );
GLOBAL_DEF ( int top_obj_index, 0 );
GLOBAL_DEF ( int top_affect, 0 );
GLOBAL_DEF ( int top_ed, 0 );
GLOBAL_DEF ( int top_mprog_index, 0 );
GLOBAL_DEF ( int newmobs, 0 );
GLOBAL_DEF ( int newobjs, 0 );
GLOBAL_DEF ( int top_vnum_mob, 0 );
GLOBAL_DEF ( int top_vnum_obj, 0 );
GLOBAL_DEF ( int top_vnum_room, 0 );
GLOBAL_DEF ( long top_vnum, 0 );

GLOBAL ( ROOM_INDEX_DATA * room_index_hash[MAX_KEY_HASH] );
GLOBAL ( GQUEST gquest_info );

GLOBAL_DEF ( HELP_DATA * help_last, NULL );

GLOBAL_DEF ( int share_value, SHARE_VALUE );

GLOBAL_DEF ( HELP_DATA * help_first, NULL );
GLOBAL_DEF ( SHOP_DATA * shop_first, NULL );

GLOBAL_DEF ( CHAR_DATA * char_list, NULL );
GLOBAL_DEF ( DESCRIPTOR_DATA * descriptor_list, NULL );
GLOBAL_DEF ( OBJ_DATA * object_list, NULL );

GLOBAL_DEF ( MPROG_CODE * mprog_list, NULL );
GLOBAL_DEF ( AUCTION_DATA * auction_list, NULL );

GLOBAL ( char bug_buf[2 * MAX_INPUT_LENGTH] );
GLOBAL ( time_t current_time );
GLOBAL_DEF ( bool fLogAll, FALSE );
GLOBAL_DEF ( FILE * fpReserve, NULL );
GLOBAL ( KILL_DATA kill_table[MAX_LEVEL] );
GLOBAL ( char log_buf[2 * MAX_INPUT_LENGTH] );
GLOBAL ( TIME_INFO_DATA time_info );
GLOBAL ( WEATHER_DATA weather_info );
GLOBAL_DEF ( int reboot_counter, -1 );
GLOBAL_DEF ( bool MOBtrigger, TRUE );

GLOBAL_DEF ( bool global_quest, FALSE );
GLOBAL_DEF ( bool double_exp, FALSE );
GLOBAL_DEF ( bool double_qp, FALSE );
GLOBAL ( char last_command[MSL] );
GLOBAL ( char last_command2[MSL] );
GLOBAL_DEF ( int last_descriptor, 0 );
GLOBAL_DEF ( int arena, FIGHT_OPEN );
GLOBAL_DEF ( AREA_DATA * area_first_sorted, NULL );
GLOBAL_DEF ( bool newlock, FALSE );
GLOBAL_DEF ( bool wizlock, FALSE );
GLOBAL_DEF ( bool merc_down, FALSE );

GLOBAL_DEF ( int chain, 0 );

GLOBAL ( char boot_buf[MAX_STRING_LENGTH] );
GLOBAL_DEF ( BAN_DATA * ban_list, NULL );
GLOBAL_DEF ( NOTE_DATA * note_list, NULL );
GLOBAL_DEF ( CLN_DATA * cln_list, NULL );

GLOBAL_DEF ( char *help_greetinga,
             "Welcome to Death Rising II: A Darker Reality" );
GLOBAL_DEF ( char *help_greetingb,
             "Welcome to Death Rising II: A Darker Reality" );
GLOBAL_DEF ( char *help_greetingc,
             "Welcome to Death Rising II: A Darker Reality" );
GLOBAL_DEF ( char *help_greetingd,
             "Welcome to Death Rising II: A Darker Reality" );
GLOBAL_DEF ( char *help_greetinge,
             "Welcome to Death Rising II: A Darker Reality" );
GLOBAL_DEF ( char *help_authors, "" );
GLOBAL_DEF ( char *help_login, "What are you known as traveller?" );

/* externals for counting purposes */
GLOBAL_DEF ( OBJ_DATA * obj_free, NULL );
GLOBAL_DEF ( CHAR_DATA * char_free, NULL );
GLOBAL_DEF ( DESCRIPTOR_DATA * descriptor_free, NULL );
GLOBAL_DEF ( PC_DATA * pcdata_free, NULL );
GLOBAL_DEF ( AFFECT_DATA * affect_free, NULL );
GLOBAL_DEF ( bool fBootDb, FALSE );
GLOBAL ( MOB_INDEX_DATA * mob_index_hash[MAX_KEY_HASH] );
GLOBAL ( OBJ_INDEX_DATA * obj_index_hash[MAX_KEY_HASH] );
GLOBAL_DEF ( FILE * fpArea, NULL );
GLOBAL ( char strArea[MAX_INPUT_LENGTH] );

GLOBAL_DEF ( int nAllocPerm, 0 );
GLOBAL_DEF ( int nAllocString, 0 );

GLOBAL_DEF ( int maxSocial, 0 );    /* Max number of socials */

GLOBAL_DEF ( NOTE_DATA * idea_list, NULL );
GLOBAL_DEF ( NOTE_DATA * penalty_list, NULL );
GLOBAL_DEF ( NOTE_DATA * news_list, NULL );
GLOBAL_DEF ( NOTE_DATA * changes_list, NULL );
GLOBAL_DEF ( NOTE_DATA * weddings_list, NULL );
GLOBAL ( char str_boot_time[MAX_INPUT_LENGTH] );

#endif