SmaugWizard/Backup/
SmaugWizard/Backup/L/
SmaugWizard/Boards/
SmaugWizard/Building/
SmaugWizard/Corpses/
SmaugWizard/Councils/
SmaugWizard/Deity/
SmaugWizard/Gods/
SmaugWizard/MudProgs/
SmaugWizard/Player/L/
SmaugWizard/Src/
SmaugWizard/Src/res/
/****************************************************************************
 * [S]imulated [M]edieval [A]dventure multi[U]ser [G]ame      |				*
 * -----------------------------------------------------------|   \\._.//	*
 * SmaugWiz (C) 1998 by Russ Pillsbury (Windows NT version)   |   (0...0)	*
 * -----------------------------------------------------------|    ).:.(	*
 * SMAUG (C) 1994, 1995, 1996 by Derek Snider                 |    {o o}	*
 * -----------------------------------------------------------|   / ' ' \	*
 * SMAUG code team: Thoric, Altrag, Blodkai, Narn, Haus,      |~'~.VxvxV.~'~*
 * Scryn, Swordbearer, Rennard, Tricops, and Gorog.           |				*
 * ------------------------------------------------------------------------ *
 * Merc 2.1 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 Staerfeldt, Tom Madsen, and Katja Nyboe.    *
 * ------------------------------------------------------------------------ *
 *			    Smaug Object Menu Interface file									*
 ****************************************************************************/

#ifndef	OBJMENU_H
#define	OBJMENU_H

#ifndef	MENUS_H
	#include	"menus.h"
#endif


class CObjectMenu : public CSmaugMenu {
public:
					CObjectMenu (CObjData& Obj);

	void			Display (CCharacter& Ch, int page);
	void			Display (CCharacter& Ch, char page)
					{ Display (Ch, page - 'a'); }
	void			DisplayData (CCharacter& Ch);
	BOOL			Edit (CCharacter& Ch, char* arg, const char* cmd);
	void			Save (CCharacter& Ch);
	const CString&	GetName () { return ma_Name; }

	static void CObjectMenu::InitObjectMenu ();
	static void CObjectMenu::UnInitObjectMenu ();

	static char	*m_pSavePagef;


	CObjData	*m_pObj;

	// A Menu page items
	CString	ma_Name;
	CString	ma_Short;
	CString	ma_Desc;
	CString	ma_ActDesc;
	int		ma_Level;
	int		ma_Value [6];
	char	*ma_pItemStr1;
	char	*ma_pItemStr2;
	char	*ma_pItemStr3;
	char	*ma_pItemStr4;
	int		ma_Weight;
	int		ma_Cost;

	// B Menu page items
	BOOL	mb_Fountain;
	BOOL	mb_Furniture;
	BOOL	mb_Armor;
	BOOL	mb_Food;
	BOOL	mb_Money;
	BOOL	mb_Potion;
	BOOL	mb_Chain;
	BOOL	mb_Weapon;
	BOOL	mb_Map;
	BOOL	mb_Light;
	BOOL	mb_Button;
	BOOL	mb_Treasure;
	BOOL	mb_Herb;
	BOOL	mb_Trash;
	BOOL	mb_Switch;
	BOOL	mb_Container;
	BOOL	mb_Wand;
	BOOL	mb_Scroll;
	BOOL	mb_Staff;
	BOOL	mb_BloodStain;
	BOOL	mb_Pill;
	BOOL	mb_Blood;
	BOOL	mb_Dial;
	BOOL	mb_OldTrap;
	BOOL	mb_Key;
	BOOL	mb_Incense;
	BOOL	mb_Lever;
	BOOL	mb_CorpsePC;
	BOOL	mb_Pipe;
	BOOL	mb_Scraps;
	BOOL	mb_Trap;
	BOOL	mb_CorpseNPC;
	BOOL	mb_Book;
	BOOL	mb_Match;
	BOOL	mb_DrinkCon;
	BOOL	mb_Portal;
	BOOL	mb_Pen;
	BOOL	mb_Fire;
	BOOL	mb_HerbCon;
	BOOL	mb_fireweapon;
	BOOL	mb_Boat;
	BOOL	mb_Rune;
	BOOL	mb_RunePouch;
	BOOL	mb_Missile;

	// C Menu page items
	int		mc_SavingPoison;
	int		mc_Age;
	int		mc_Strength;
	int		mc_SavingRod;
	int		mc_Class;
	int		mc_Intelligence;
	int		mc_SavingPara;
	int		mc_Level;
	int		mc_Wisdom;
	int		mc_SavingBreath;
	int		mc_Sex;
	int		mc_Dexterity;
	int		mc_SavingSpell;
	int		mc_Height;
	int		mc_Constitution;
	int		mc_Weight;
	int		mc_Charm;
	int		mc_Mana;
	int		mc_Ac;
	int		mc_Hit;
	int		mc_Hitroll;
	int		mc_Gold;
	int		mc_Move;
	int		mc_Damroll;
	int		mc_Experience;

	char    mc_rFire [4];
	char    mc_rCold [4];
	char    mc_rElectricity [4];
	char    mc_rEnergy [4];
	char    mc_rPoison [4];

	char    mc_rBlunt [4];
	char    mc_rPierce [4];
	char    mc_rSlash [4];
	char    mc_rAcid [4];
	char    mc_rNonMagic [4];

	char    mc_rDrain [4];
	char    mc_rSleep [4];
	char    mc_rCharm [4];
	char    mc_rHold [4];
	char    mc_rMagic [4];

	char    mc_rPlus1 [4];
	char    mc_rPlus2 [4];
	char    mc_rPlus3 [4];
	char    mc_rPlus4 [4];
	char    mc_rPlus5 [4];
	char    mc_rPlus6 [4];


	// D Menu page items
	BOOL	md_Blind;
	BOOL	md_DetectInv;
	BOOL	md_DetectEvil;
	BOOL	md_DetectMagic;
	BOOL	md_DetectHidden;
	BOOL	md_Hold;
	BOOL	md_Sanctuary;
	BOOL	md_FaerieFire;
	BOOL	md_Infra;
	BOOL	md_Curse;
	BOOL	md_Flaming;
	BOOL	md_Poison;
	BOOL	md_Protect;
	BOOL	md_Paralysis;
	BOOL	md_Sleep;
	BOOL	md_Hide;
	BOOL	md_Sneak;
	BOOL	md_Charm;
	BOOL	md_Fly;
	BOOL	md_PassDoor;
	BOOL	md_TrueSight;
	BOOL	md_DetectTraps;
	BOOL	md_Scry;
	BOOL	md_FireShield;
	BOOL	md_ShockShield;
	BOOL	md_Float;
	BOOL	md_Invisible;


	// E Menu page items
	BOOL	me_Evil;
	BOOL	me_AntiGood;
	BOOL	me_NoDrop;
	BOOL	me_Invis;
	BOOL	me_AntiEvil;
	BOOL	me_NoRemove;
	BOOL	me_Hidden;
	BOOL	me_AntiNeutral;
	BOOL	me_Inventory;
	BOOL	me_Glow;
	BOOL	me_Bless;
	BOOL	me_Donation;
	BOOL	me_Hum;
	BOOL	me_Metal;
	BOOL	me_ClanObj;
	BOOL	me_Dark;
	BOOL	me_Organic;
	BOOL	me_ClanCorpse;
	BOOL	me_Magic;
	BOOL	me_Loyal;
	BOOL	me_DeathRot;
	BOOL	me_Take;
	BOOL	me_Finger;
	BOOL	me_Neck;
	BOOL	me_Body;
	BOOL	me_Head;
	BOOL	me_Legs;
	BOOL	me_Feet;
	BOOL	me_Hands;
	BOOL	me_Arms;
	BOOL	me_Shield;
	BOOL	me_About;
	BOOL	me_Waist;
	BOOL	me_Wrist;
	BOOL	me_Wield;
	BOOL	me_Hold;
	BOOL	me_Dual;
	BOOL	me_Ears;
	BOOL	me_Eyes;

	// F page items
	BOOL	mf_AntiClass [32];
};


#ifdef	OBJMENU_CPP

static char *ObjMenus [] = {
".-------.----[Omenu Page A]-----------------------------------------------.\r\n"
"|[1]TEXT|  a]Name:                                                        |\r\n"
"|-------'  b]Level [   ]                                                  |\r\n"
"|c]Short:                                                                 |\r\n"
"|d]Long:                                                                  |\r\n"
"|e]ActionDesc:                                                            |\r\n"
":---------------------------------------------+---------------------------'\r\n"
"|[2]VALUES|         Value Meaning             |[3]STATS |             |\r\n"
"|---------'         ---------------           |---------'             |\r\n"
"| a]Value0:[      ] (                      )  | a]Weight:[      ]     |\r\n"
"| b]Value1:[      ] (                      )  | b]Cost:  [      ]     |\r\n"
"| c]Value2:[      ] (                      )  |                       |\r\n"
"| d]Value3:[      ] (                      )  |                       |\r\n"
"`---------------------------------------------+-----------------------'\r\n"
,

".---------.--[Omenu Page B]------------------------------------------.\r\n"
"|[1]OBJECT| i]map    ( )    u]fountain  ( )    G]furniture      ( )  |\r\n"
"|   TYPES | j]armor  ( )    v]food      ( )    H]money          ( )  |\r\n"
"|---------' k]potion ( )    w]pullchain ( )    I]weapon         ( )  |\r\n"
"|           l]light  ( )    x]button    ( )    J]treasure       ( )  |\r\n"
"|a]herb( )  m]trash  ( )    y]switch    ( )    K]container      ( )  |\r\n"
"|b]wand( )  n]scroll ( )    z]staff     ( )    L]bloodstain     ( )  |\r\n"
"|c]pill( )  o]blood  ( )    A]dial      ( )    M]_oldtrap       ( )  |\r\n"
"|d]key ( )  p]incense( )    B]lever     ( )    N]corpse_pc      ( )  |\r\n"
"|e]pipe( )  q]scraps ( )    C]trap      ( )    O]corpse         ( )  |\r\n"
"|f]book( )  r]match  ( )    D]drinkcon  ( )    P]portal         ( )  |\r\n"
"|g]_pen( )  s]fire   ( )    E]herbcon   ( )    Q]_fireweapon    ( )  |\r\n"
"|h]boat( )  t]rune   ( )    F]runepouch ( )    R]_missile       ( )  |\r\n"
"`--------------------------------------------------------------------'\r\n"
,

".----------.-[Omenu Page C]----------------------------------------------.\r\n"
"|[1] BASIC |  a]STR :[   ]   g]save_poi   :[    ]%     l]age   :[    ]   |\r\n"
"|  AFFECTS |  b]INT :[   ]   h]save_rod   :[    ]%     m]class :[    ]   |\r\n"
"|----------'  c]WIS :[   ]   i]save_para  :[    ]%     n]level :[    ]   |\r\n"
"|             d]DEX :[   ]   j]save_breath:[    ]%     o]sex   :[    ]   |\r\n"
"|             e]CON :[   ]   k]save_spell :[    ]%     p]height:[    ]   |\r\n"
"|             f]CHA :[   ]                             q]weight:[    ]   |\r\n"
"|                                                                        |\r\n"
"|  r]Mana:[     ]            u]AC     :[     ]                           |\r\n"
"|  s]HP  :[     ]            v]HitRoll:[     ]        x]Gold:[     ]     |\r\n"
"|  t]Move:[     ]            w]DamRoll:[     ]        y]Exp :[     ]     |\r\n"
":--------.---------------------------------------------------------------.\r\n"
"|[2] RIS |   a]fire  ... f]blunt ... k]drain ... p]plus1 ... q]plus2 ... |\r\n"
"|AFFECTS |   b]cold  ... g]pierce... l]sleep ...             r]plus3 ... |\r\n"
"|--------'   c]elect ... h]slash ... m]charm ...             s]plus4 ... |\r\n"
"|            d]energy... i]acid  ... n]hold  ...             t]plus5 ... |\r\n"
"|            e]poison... j]nonMag... o]magic ...             u]plus6 ... |\r\n"
"`------------------------------------------------------------------------'\r\n"
,

".-----------.--[Omenu Page D]-------------------------------------.\r\n"
"|[1]ADVANCED|                                                     |\r\n"
"|    AFFECTS|  d]Sleep     ( )  l]Sanct      ( )  t]Flaming  ( )  |\r\n"
"|-----------'  e]Blind     ( )  m]DetInvis   ( )  u]DetEvil  ( )  |\r\n"
"|              f]DetMagic  ( )  n]DetHidden  ( )  v]Hold     ( )  |\r\n"
"|              g]Faerie    ( )  o]InfraRed   ( )  w]Cursed   ( )  |\r\n"
"|              h]Poison    ( )  p]Protection ( )  x]Paralysis( )  |\r\n"
"|a]Flying ( )  i]Hide      ( )  q]Sneak      ( )  y]Charm    ( )  |\r\n"
"|b]Scrying( )  j]PassDoor  ( )  r]TrueSight  ( )  z]DetTraps ( )  |\r\n"
"|c]Invisib( )  k]FireShield( )  s]ShockShield( )  A]Floating ( )  |\r\n"
"`-----------------------------------------------------------------'\r\n"
,

".----------.--[Omenu Page E]----------------------------------------.\r\n"
"|[1] OBJECT|                                                        |\r\n"
"|    FLAGS |   d]Magic    ( )  j]Metal       ( )  p]NoRemove   ( )  |\r\n"
"|----------'   e]Loyal    ( )  k]Organic     ( )  q]Inventory  ( )  |\r\n"
"|              f]Evil     ( )  l]AntiGood    ( )  r]Donation   ( )  |\r\n"
"|a]Glow   ( )  g]Invis    ( )  m]AntiEvil    ( )  w]ClanObject ( )  |\r\n"
"|b]Hum    ( )  h]Hidden   ( )  n]AntiNeutral ( )  t]ClanCorpse ( )  |\r\n"
"|c]Dark   ( )  i]Bless    ( )  o]NoDrop      ( )  u]Deathrot   ( )  |\r\n"
"|                                                                   |\r\n"
":-------------------------------------------------------------------.\r\n"
"|[2] WEAR  |   c]Take ( )  g]Finger  ( )  k]Neck  ( )  o]Body  ( )  |\r\n"
"|    FLAGS |   d]Head ( )  h]Legs    ( )  l]Feet  ( )  p]Hands ( )  |\r\n"
"|----------'   e]Arms ( )  i]Shield  ( )  m]About ( )  q]Waist ( )  |\r\n"
"|a]Wrist  ( )  f]Wield( )  j]Hold    ( )  n]_dual_( )  r]Ears  ( )  |\r\n"
"|b]Eyes   ( )                                                       |\r\n"
"`-------------------------------------------------------------------'\r\n"
,

".----------.--[Omenu Page F]----------------------------------------.\r\n"
"|[1] ANTI- |       f]Class6    ( )  o]Class15   ( )  x]Class24   ( )|\r\n"
"|    CLASS |       g]Class7    ( )  p]Class16   ( )  y]Class25   ( )|\r\n"
"|    FLAGS |       h]Class8    ( )  q]Class17   ( )  z]Class26   ( )|\r\n"
"|----------'       i]Class9    ( )  r]Class18   ( )  A]Class27   ( )|\r\n"
"| a]Class1    ( )  j]Class10   ( )  s]Class19   ( )  B]Class28   ( )|\r\n"
"| b]Class2    ( )  k]Class11   ( )  t]Class20   ( )  C]Class29   ( )|\r\n"
"| c]Class3    ( )  l]Class12   ( )  u]Class21   ( )  D]Class30   ( )|\r\n"
"| d]Class4    ( )  m]Class13   ( )  v]Class22   ( )  E]Class31   ( )|\r\n"
"| e]Class5    ( )  n]Class14   ( )  w]Class23   ( )  F]Class32   ( )|\r\n"
"`-------------------------------------------------------------------'\r\n"
,

".------------[Omenu Help Page]--------------------------------------.\r\n"
"|    Page Contents                    |        COMMANDS.            |\r\n"
"|                                     |   (s=Section#, i=id)        |\r\n"
"| PAGE     CONTENTS                   |   ------------------        |\r\n"
"|------|------------------------------| -a thru -h: Select Page     |\r\n"
"|  a   | Strings, values, weight/cost |                             |\r\n"
"|  b   | Object type                  | s i: Toggle Checked items   |\r\n"
"|  c   | Affects & affect RIS         |                             |\r\n"
"|  d   | Affect affecteds             | s i [r,i,s]: Toggle RIS     |\r\n"
"|  e   | Oflags & wear flags          |                             |\r\n"
"|  f   | Anti-Class flags             | s i arg: Change numbers     |\r\n"
"|  h   | Help                         |          and Strings        |\r\n"
"|-------------------------------------| Quitmenu: Abort Menu        |\r\n"
"| Also see 'help omenu'.              | Savemenu: Save & quit Menu  |\r\n"
"`-------------------------------------------------------------------'\r\n"
};

char	*CObjectMenu::m_pSavePagef;

#endif

#endif