/**************************************************************************
* Original Diku Mud copyright (C) 1990, 1991 by Sebastian Hammer, *
* Michael Seifert, Hans Henrik St{rfeldt, Tom Madsen, and Katja Nyboe. *
* *
* Merc Diku Mud improvements copyright (C) 1992, 1993 by Michael *
* Chastain, Michael Quan, and Mitchell Tse. *
* *
* In order to use any part of this Merc Diku Mud, you must comply with *
* both the original Diku license in 'license.doc' as well the Merc *
* license in 'license.txt'. In particular, you may not remove either of *
* these copyright notices. *
* *
* Much time and thought has gone into this software and you are *
* benefiting. We hope that you share your changes too. What goes *
* around, comes around. *
***************************************************************************
* ROM 2.4 is copyright 1993-1998 Russ Taylor *
* ROM has been brought to you by the ROM consortium *
* Russ Taylor (rtaylor@hypercube.org) *
* Gabrielle Taylor (gtaylor@hypercube.org) *
* Brian Moore (zump@rom.org) *
* By using this code, you have agreed to follow the terms of the *
* ROM license, in the file Rom24/doc/rom.license *
***************************************************************************
* 1stMUD ROM Derivative (c) 2001-2003 by Ryan Jennings *
* http://1stmud.dlmud.com/ <r-jenn@shaw.ca> *
***************************************************************************/
#if !defined(TYPEDEF_H)
#define TYPEDEF_H
#if !defined(__cplusplus)
typedef unsigned char bool;
#endif
#if !defined(FALSE)
#if defined(__cplusplus)
#define FALSE false
#else
#define FALSE 0
#endif
#endif
#if !defined(TRUE)
#if defined(__cplusplus)
#define TRUE true
#else
#define TRUE 1
#endif
#endif
typedef signed long int vnum_t;
#if defined(WIN32)
typedef __int64 flag_t;
#else
typedef signed long long int flag_t;
#endif
/*
* Structure types.
*/
typedef struct affect_data AFFECT_DATA;
typedef struct area_data AREA_DATA;
typedef struct ban_data BAN_DATA;
typedef struct buf_type BUFFER;
typedef struct char_data CHAR_DATA;
typedef struct descriptor_data DESCRIPTOR_DATA;
typedef struct exit_data EXIT_DATA;
typedef struct extra_descr_data EXTRA_DESCR_DATA;
typedef struct help_data HELP_DATA;
typedef struct kill_data KILL_DATA;
typedef struct mob_index_data MOB_INDEX_DATA;
typedef struct note_data NOTE_DATA;
typedef struct obj_data OBJ_DATA;
typedef struct obj_index_data OBJ_INDEX_DATA;
typedef struct pc_data PC_DATA;
typedef struct gen_data GEN_DATA;
typedef struct reset_data RESET_DATA;
typedef struct room_index_data ROOM_INDEX_DATA;
typedef struct shop_data SHOP_DATA;
typedef struct time_info_data TIME_INFO_DATA;
typedef struct weather_data WEATHER_DATA;
typedef struct prog_list PROG_LIST;
typedef struct prog_code PROG_CODE;
typedef struct disabled_data DISABLED_DATA;
typedef struct stat_data STAT_DATA;
typedef struct social_type SOCIAL_DATA;
typedef struct gquest_data GQUEST;
typedef struct war_data WAR;
typedef struct clan_type CLAN_DATA;
typedef struct cmd_type CMD_DATA;
typedef struct skill_type SKILL_DATA;
typedef struct group_type GROUP_DATA;
typedef struct race_type RACE_DATA;
typedef struct class_type CLASS_DATA;
typedef struct corpse_data CORPSE_DATA;
typedef struct auction_data AUCTION_DATA;
typedef struct clan_rank RANK_DATA;
typedef struct deity_type DEITY_DATA;
typedef struct wpwd_data WPWD_DATA;
typedef struct mbr_data MBR_DATA;
typedef struct war_char_data WAR_DATA;
typedef struct gquest_char_data GQ_DATA;
typedef struct channel_type CHANNEL_DATA;
typedef struct crs_data CRS;
typedef struct mud_data MUD;
typedef struct song_data SONG_DATA;
typedef struct read_data READ_DATA;
typedef struct write_data WRITE_DATA;
/*
* Function types.
*/
typedef void DO_FUN(CHAR_DATA * ch, const char *argument);
typedef bool SPEC_FUN(CHAR_DATA * ch);
typedef void SPELL_FUN(int sn, int level, CHAR_DATA * ch, void *vo, int target);
typedef int LOOKUP_F(const char *);
typedef bool VALIDATE_FUN(CHAR_DATA * ch, const void *arg);
typedef bool ED_FUN(const char *, CHAR_DATA *, const char *, void *,
const void *, VALIDATE_FUN *);
typedef void OBJ_FUN(OBJ_DATA * obj, const char *argument);
typedef void ROOM_FUN(ROOM_INDEX_DATA * room, const char *argument);
typedef enum
{
spec_public_flag,
spec_clan_flag,
spec_imm_flag,
spec_buddy_flag,
spec_none
}
channel_types;
typedef enum
{ action_read, action_write }
action_types;
typedef enum
{
WAR_NONE = 0,
WAR_CLAN = 1,
WAR_RACE = 2,
WAR_CLASS = 3,
WAR_GENOCIDE = 4,
WAR_DEITY = 5,
WAR_SEX = 6,
MAX_WAR = 7
}
war_types;
#endif