/****************************************************************************
* [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