/************************************************************************ Realms of Aurealis James Rhone aka Vall of RoA warlock.h various function protos and structure definitions related to warlocks and their OLCable things ******** 100% Completely Original Code ******** *** BE AWARE OF ALL RIGHTS AND RESERVATIONS *** ******** 100% Completely Original Code ******** All rights reserved henceforth. Please note that no guarantees are associated with any code from Realms of Aurealis. All code which has been released to the general public has been done so with an 'as is' pretense. RoA is based on both Diku and CircleMUD and ALL licenses from both *MUST* be adhered to as well as the RoA license. *** Read, Learn, Understand, Improve *** *************************************************************************/ #ifndef ROA_WARLOCK_H #define ROA_WARLOCK_H // what type of warlock spell is it #define WSPELL_DAMAGE 0 #define WSPELL_AFFECT 1 /* an array of these, 300 big for now is the spell index we will lookup to check if the spell exists */ struct wspell_index { char name[80]; }; // here is the warlock spell structure // now has ability to produce affectuals 2/19/97 -roa struct wspell_type { char *name; int type; // WSPELL_XXX int level; /* min level to cast */ int mana; /* max mana cost */ int delay; /* sets character delay of ... */ // damage stats, can be unioned with aff stats sometime int num_dice; /* number of spell dam dice */ int size_dice; /* size of spell dam dice */ int dice_bonus; /* + X on the damage roll */ int save_off; /* take this much off if vict makes saving throw */ // following can be put in a union sometime, aff stats int spell; // for which SPELL_ / SKILL_ affect int violent; // is this spell violent int apply; // where to apply the affect int modifier; // how much to modify int duration; // how long it will last int aff1; // AFF_XXX bitvector bits to set int aff2; // AFF2_XXX bitvector bits to set /* messages */ char *to_char_miss; char *to_char_hit; char *to_char_kill; char *to_vict_miss; char *to_vict_hit; char *to_vict_kill; char *to_room_miss; char *to_room_hit; char *to_room_kill; }; #endif // ROA_WARLOCK_H