eldhamud_2.2.5/clans/
eldhamud_2.2.5/classes/
eldhamud_2.2.5/councils/
eldhamud_2.2.5/deity/
eldhamud_2.2.5/doc/
eldhamud_2.2.5/doc/DIKU/
eldhamud_2.2.5/doc/DIKU/.svn/
eldhamud_2.2.5/doc/DIKU/.svn/prop-base/
eldhamud_2.2.5/doc/DIKU/.svn/text-base/
eldhamud_2.2.5/doc/MERC/
eldhamud_2.2.5/doc/MERC/.svn/
eldhamud_2.2.5/doc/SMAUG/.svn/
eldhamud_2.2.5/doc/SMAUG/mudprogs/
eldhamud_2.2.5/doc/SMAUG/mudprogs/.svn/
eldhamud_2.2.5/gods/
eldhamud_2.2.5/houses/
eldhamud_2.2.5/player/
eldhamud_2.2.5/player/a/
eldhamud_2.2.5/races/
eldhamud_2.2.5/src/Headers/.svn/
eldhamud_2.2.5/src/ObjectFiles/.svn/
/****************************************************************************
 *			Eldhamud Codebase V2.2				    *
 * ------------------------------------------------------------------------ *
 *          EldhaMUD code (C) 2003-2008 by Robert Powell (Tommi)            *
 * ------------------------------------------------------------------------ *
 *                                                                        *
 *     OasisOLC II for Smaug 1.40 written by Evan Cortens(Tagith)         *
 *                                                                        *
 *   Based on OasisOLC for CircleMUD3.0bpl9 written by Harvey Gilpin      *
 *                                                                        *
 **************************************************************************
 *                                                                        *
 *                         Defines, structs, etc..                        *
 *                                                                        *
\**************************************************************************/



#define MAX_RIS_FLAG 21

/*. OLC structs .*/

struct olc_data
{
    int mode;
    int zone_num;
    int number;
    int value;
    bool changed;

    MOB_INDEX_DATA *mob;
    ROOM_INDEX_DATA *room;
    OBJ_DATA *obj;
    AREA_DATA *area;
    SHOP_DATA *shop;
    EXTRA_DESCR_DATA *desc;
    AFFECT_DATA *paf;
    EXIT_DATA *xit;
};

struct olc_save_info
{
    int zone;
    char type;
    struct olc_save_info *next;
};

/*. Descriptor access macros .*/
#define OLC_MODE(d) 	((d)->olc->mode) 	/* Parse input mode	*/
#define OLC_NUM(d) 	((d)->olc->number)	/* Room/Obj VNUM 	*/
#define OLC_VNUM(d)	OLC_NUM(d)
#define OLC_VAL(d) 	((d)->olc->value)  	/* Scratch variable	*/
#define OLC_OBJ(d)	(obj)
#define OLC_DESC(d) 	((d)->olc->desc)	/* Extra description	*/
#define OLC_AFF(d)	((d)->olc->paf)		/* Affect data 		*/
#define OLC_CHANGE(d)	((d)->olc->changed)	/* Changed flag		*/
#define OLC_EXIT(d)     ((d)->olc->xit)		/* An Exit		*/


/* Submodes of OEDIT connectedness */
#define OEDIT_MAIN_MENU              	1
#define OEDIT_EDIT_NAMELIST          	2
#define OEDIT_SHORTDESC              	3
#define OEDIT_LONGDESC               	4
#define OEDIT_ACTDESC                	5
#define OEDIT_TYPE                   	6
#define OEDIT_EXTRAS                 	7
#define OEDIT_WEAR                  	8
#define OEDIT_WEIGHT                	9
#define OEDIT_COST                  	10
#define OEDIT_COSTPERDAY            	11
#define OEDIT_TIMER                 	12
#define OEDIT_VALUE_1               	13
#define OEDIT_VALUE_2               	14
#define OEDIT_VALUE_3               	15
#define OEDIT_VALUE_4               	16
#define OEDIT_VALUE_5			17
#define OEDIT_VALUE_6			18
#define OEDIT_EXTRADESC_KEY         	19
#define OEDIT_CONFIRM_SAVEDB        	20
#define OEDIT_CONFIRM_SAVESTRING    	21
#define OEDIT_EXTRADESC_DESCRIPTION 	22
#define OEDIT_EXTRADESC_MENU        	23
#define OEDIT_LEVEL                 	24
#define OEDIT_LAYERS			25
#define OEDIT_AFFECT_MENU		26
#define OEDIT_AFFECT_LOCATION		27
#define OEDIT_AFFECT_MODIFIER		28
#define OEDIT_AFFECT_REMOVE		29
#define OEDIT_AFFECT_RIS		30
#define OEDIT_EXTRADESC_CHOICE		31
#define OEDIT_EXTRADESC_DELETE		32
#define OEDIT_MPROGS			33
#define OEDIT_MPROGS_CHOICE		34
#define OEDIT_MPROGS_DELETE		35
#define OEDIT_MPROGS_TYPE		36
#define OEDIT_MPROGS_ARG		37


/* Submodes of REDIT connectedness */
#define REDIT_MAIN_MENU 		1
#define REDIT_NAME 			2
#define REDIT_DESC 			3
#define REDIT_FLAGS 			4
#define REDIT_SECTOR 			5
#define REDIT_EXIT_MENU 		6
#define REDIT_CONFIRM_SAVEDB 		7
#define REDIT_CONFIRM_SAVESTRING 	8
#define REDIT_EXIT_VNUM 		9
#define REDIT_EXIT_DESC 		10
#define REDIT_EXIT_KEYWORD 		11
#define REDIT_EXIT_KEY 			12
#define REDIT_EXIT_FLAGS 		13
#define REDIT_EXTRADESC_MENU 		14
#define REDIT_EXTRADESC_KEY 		15
#define REDIT_EXTRADESC_DESCRIPTION 	16
#define REDIT_TUNNEL			17
#define REDIT_TELEDELAY			18
#define REDIT_TELEVNUM			19
#define REDIT_EXIT_EDIT			20
#define REDIT_EXIT_ADD			21
#define REDIT_EXIT_DELETE		22
#define REDIT_EXIT_ADD_VNUM		23
#define REDIT_EXTRADESC_DELETE		24
#define REDIT_EXTRADESC_CHOICE		25


/*. Submodes of MEDIT connectedness 	.*/
#define MEDIT_NPC_MAIN_MENU		0
#define MEDIT_PC_MAIN_MENU		1
#define MEDIT_NAME 			2
#define MEDIT_S_DESC			3
#define MEDIT_L_DESC			4
#define MEDIT_D_DESC			5
#define MEDIT_NPC_FLAGS			6
#define MEDIT_PC_FLAGS			7
#define MEDIT_AFF_FLAGS			8
#define MEDIT_CONFIRM_SAVESTRING	9
#define MEDIT_SEX			10
#define MEDIT_HITROLL			11
#define MEDIT_DAMROLL			12
#define MEDIT_DAMNUMDIE			13
#define MEDIT_DAMSIZEDIE		14
#define MEDIT_DAMPLUS			15
#define MEDIT_HITNUMDIE			16
#define MEDIT_HITSIZEDIE		17
#define MEDIT_HITPLUS			18
#define MEDIT_AC			19
#define MEDIT_GOLD			20
#define MEDIT_POS			21
#define MEDIT_DEFAULT_POS		22
#define MEDIT_ATTACK			23
#define MEDIT_DEFENSE			24
#define MEDIT_LEVEL			25
#define MEDIT_ALIGNMENT			26
#define MEDIT_STRENGTH			27
#define MEDIT_INTELLIGENCE		28
#define MEDIT_WISDOM			29
#define MEDIT_DEXTERITY			30
#define MEDIT_CONSTITUTION		31
#define MEDIT_CHARISMA			32
#define MEDIT_LUCK			33
#define MEDIT_CLAN			34
#define MEDIT_DEITY			35
#define MEDIT_COUNCIL			36
#define MEDIT_SPEC			37
#define MEDIT_RESISTANT			38
#define MEDIT_IMMUNE			39
#define MEDIT_SUSCEPTIBLE		40
#define MEDIT_PCDATA_FLAGS		41
#define MEDIT_MENTALSTATE		42
#define MEDIT_EMOTIONAL			43
#define MEDIT_THIRST			44
#define MEDIT_FULL			45
#define MEDIT_DRUNK			46
#define MEDIT_PARTS			47
#define MEDIT_FAVOR			48
#define MEDIT_HITPOINT			49
#define MEDIT_MANA			50
#define MEDIT_MOVE			51
#define MEDIT_PRACTICE			52
#define MEDIT_PASSWORD			53
#define MEDIT_SAVE_MENU			54
#define MEDIT_SAV1			55
#define MEDIT_SAV2			56
#define MEDIT_SAV3			57
#define MEDIT_SAV4			58
#define MEDIT_SAV5			59
#define MEDIT_CLASS			60
#define MEDIT_RACE			61