[ogs-changes] dist/c++/ogs/magic/feats EmpowerSpell.h,1.2,1.3 EnlargeSpell.h,1.2,1.3 ExtendSpell.h,1
Status: Alpha
Brought to you by:
elemings
Update of /cvsroot/ogs/dist/c++/ogs/magic/feats In directory sc8-pr-cvs1:/tmp/cvs-serv20206/c++/ogs/magic/feats Modified Files: EmpowerSpell.h EnlargeSpell.h ExtendSpell.h HeightenSpell.h MaximizeSpell.h Namespace.h QuickenSpell.h SilentSpell.h StillSpell.h Log Message: See C++ ChangeLog (Apr 15) for details. Index: EmpowerSpell.h =================================================================== RCS file: /cvsroot/ogs/dist/c++/ogs/magic/feats/EmpowerSpell.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** EmpowerSpell.h 5 Feb 2003 06:01:29 -0000 1.2 --- EmpowerSpell.h 15 Apr 2003 16:58:47 -0000 1.3 *************** *** 35,51 **** * one-half. An empowered spell uses up a spell slot two levels higher * than a spell's normal level. */ class EmpowerSpell: public ogs::magic::MetamagicFeat { public: ! int getAddedLevels () const; }; /** ! * Determine number of levels added to normal spell level. ! * ! * @return Number of added levels. */ ! inline int EmpowerSpell::getAddedLevels () const { ! return (2); } --- 35,69 ---- * one-half. An empowered spell uses up a spell slot two levels higher * than a spell's normal level. + * + * @todo + * This feat affects different spells in different ways and, for some, + * not at all. In other words, the effects of this feat depend on the + * the type of spell and the spell class itself will have to determine + * how this feat affects it. Consequently, the spell class will also + * have to determine if these effects can be reversed and somehow allow + * the feat to store this information. So the attach and detach + * operations will basically just store and retrieve this information + * for the spell. */ class EmpowerSpell: public ogs::magic::MetamagicFeat { public: ! /** ! * The cost of using this metamagic feat. Empower Spell feats use ! * up a spell slot 2 levels higher than normal. ! */ ! static const Cost COST = 2; ! ! EmpowerSpell (); ! ! bool attachSpell (Spell& spell); ! bool detachSpell (Spell& spell); }; /** ! * Create a new Empower Spell metamagic feat. */ ! inline EmpowerSpell::EmpowerSpell (): ! MetamagicFeat (COST) { ! // empty constructor body } Index: EnlargeSpell.h =================================================================== RCS file: /cvsroot/ogs/dist/c++/ogs/magic/feats/EnlargeSpell.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** EnlargeSpell.h 5 Feb 2003 06:01:29 -0000 1.2 --- EnlargeSpell.h 15 Apr 2003 16:58:47 -0000 1.3 *************** *** 35,51 **** * enlarged spell uses up a spell slot one level higher than a spell's * normal level. */ class EnlargeSpell: public ogs::magic::MetamagicFeat { public: ! int getAddedLevels () const; }; /** ! * Determine number of levels added to normal spell level. ! * ! * @return Number of added levels. */ ! inline int EnlargeSpell::getAddedLevels () const { ! return (1); } --- 35,62 ---- * enlarged spell uses up a spell slot one level higher than a spell's * normal level. + * + * @todo + * Should be able to completely implement this feat. */ class EnlargeSpell: public ogs::magic::MetamagicFeat { public: ! /** ! * The cost of using this metamagic feat. Enlarge Spell feats use ! * up a spell slot 1 level higher than normal. ! */ ! static const Cost COST = 1; ! ! EnlargeSpell (); ! ! bool attachSpell (Spell& spell); ! bool detachSpell (Spell& spell); }; /** ! * Create a new Enlarge Spell metamagic feat. */ ! inline EnlargeSpell::EnlargeSpell (): ! MetamagicFeat (COST) { ! // empty constructor body } Index: ExtendSpell.h =================================================================== RCS file: /cvsroot/ogs/dist/c++/ogs/magic/feats/ExtendSpell.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ExtendSpell.h 5 Feb 2003 06:01:29 -0000 1.2 --- ExtendSpell.h 15 Apr 2003 16:58:47 -0000 1.3 *************** *** 35,51 **** * spell uses up a spell slot one level higher than a spell's normal * level. */ class ExtendSpell: public ogs::magic::MetamagicFeat { public: ! int getAddedLevels () const; }; /** ! * Determine number of levels added to normal spell level. ! * ! * @return Number of added levels. */ ! inline int ExtendSpell::getAddedLevels () const { ! return (1); } --- 35,64 ---- * spell uses up a spell slot one level higher than a spell's normal * level. + * + * @todo + * Should be able to completely implement this spell. The only spells + * that this feat does not affect (AFAIK) are instantaneous and + * permanent spells. */ class ExtendSpell: public ogs::magic::MetamagicFeat { public: ! /** ! * The cost of using this metamagic feat. Extend Spell feats use ! * up a spell slot 1 level higher than normal. ! */ ! static const Cost COST = 1; ! ! ExtendSpell (); ! ! bool attachSpell (Spell& spell); ! bool detachSpell (Spell& spell); }; /** ! * Create a new Extend Spell metamagic feat. */ ! inline ExtendSpell::ExtendSpell (): ! MetamagicFeat (COST) { ! // empty constructor body } Index: HeightenSpell.h =================================================================== RCS file: /cvsroot/ogs/dist/c++/ogs/magic/feats/HeightenSpell.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** HeightenSpell.h 5 Feb 2003 06:01:29 -0000 1.2 --- HeightenSpell.h 15 Apr 2003 16:58:47 -0000 1.3 *************** *** 35,54 **** * heightened spell uses up a spell slot equal to the increased spell * level. */ class HeightenSpell: public ogs::magic::MetamagicFeat { public: ! int getAddedLevels () const; ! private: ! int addedLevels; }; /** ! * Determine number of levels added to a spell's normal level. ! * ! * @return Number of added levels. */ ! int HeightenSpell::getAddedLevels () const { ! return (this->addedLevels); } --- 35,56 ---- * heightened spell uses up a spell slot equal to the increased spell * level. + * + * @todo + * See notes in EmpowerSpell class. */ class HeightenSpell: public ogs::magic::MetamagicFeat { public: ! HeightenSpell (Cost cost); ! bool attachSpell (Spell& spell); ! bool detachSpell (Spell& spell); }; /** ! * Create a new Heighten Spell metamagic feat. */ ! inline HeightenSpell::HeightenSpell (Cost cost): ! MetamagicFeat (cost) { ! // empty constructor body } Index: MaximizeSpell.h =================================================================== RCS file: /cvsroot/ogs/dist/c++/ogs/magic/feats/MaximizeSpell.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** MaximizeSpell.h 5 Feb 2003 06:01:29 -0000 1.2 --- MaximizeSpell.h 15 Apr 2003 16:58:47 -0000 1.3 *************** *** 35,51 **** * or other numeric ranges. A maximized spell uses up a slot three * levels higher than the spell's normal. */ class MaximizeSpell: public ogs::magic::MetamagicFeat { public: ! int getAddedLevels () const; }; /** ! * Determine number of levels added to normal spell level. ! * ! * @return Number of added levels. */ ! int MaximizeSpell::getAddedLevels () const { ! return (3); } --- 35,62 ---- * or other numeric ranges. A maximized spell uses up a slot three * levels higher than the spell's normal. + * + * @todo + * See notes in EmpowerSpell class. */ class MaximizeSpell: public ogs::magic::MetamagicFeat { public: ! /** ! * The cost of using this metamagic feat. Maximize Spell feats use ! * up a spell slot 2 levels higher than normal. ! */ ! static const Cost COST = 3; ! ! MaximizeSpell (); ! ! bool attachSpell (Spell& spell); ! bool detachSpell (Spell& spell); }; /** ! * Create a new Maximize Spell metamagic feat. */ ! inline MaximizeSpell::MaximizeSpell (): ! MetamagicFeat (COST) { ! // empty constructor body } Index: Namespace.h =================================================================== RCS file: /cvsroot/ogs/dist/c++/ogs/magic/feats/Namespace.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Namespace.h 7 Jan 2003 07:41:34 -0000 1.1 --- Namespace.h 15 Apr 2003 16:58:47 -0000 1.2 *************** *** 30,34 **** /** * @namespace ogs::magic::feats ! * Provides declarations for metamagic feats. */ # define OGS_BEGIN_MAGIC_FEATS_NAMESPACE \ --- 30,36 ---- /** * @namespace ogs::magic::feats ! * ! * Contains metamagic feats and other spell related feats. These ! * include the Spell Focus feat and the Spell Mastery feat. */ # define OGS_BEGIN_MAGIC_FEATS_NAMESPACE \ Index: QuickenSpell.h =================================================================== RCS file: /cvsroot/ogs/dist/c++/ogs/magic/feats/QuickenSpell.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** QuickenSpell.h 5 Feb 2003 06:01:29 -0000 1.2 --- QuickenSpell.h 15 Apr 2003 16:58:47 -0000 1.3 *************** *** 37,53 **** * round. A quickened spell uses up a spell slot four levels higher * than the spell's normal level. */ class QuickenSpell: public ogs::magic::MetamagicFeat { public: ! int getAddedLevels () const; }; /** ! * Determine number of levels added to normal spell level. ! * ! * @return Number of added levels. */ ! int QuickenSpell::getAddedLevels () const { ! return (4); } --- 37,64 ---- * round. A quickened spell uses up a spell slot four levels higher * than the spell's normal level. + * + * @todo + * Should be able to completely implement this feat. */ class QuickenSpell: public ogs::magic::MetamagicFeat { public: ! /** ! * The cost of using this metamagic feat. Quicken Spell feats use ! * up a spell slot 4 levels higher than normal. ! */ ! static const Cost COST = 4; ! ! QuickenSpell (); ! ! bool attachSpell (Spell& spell); ! bool detachSpell (Spell& spell); }; /** ! * Create a new Quicken Spell metamagic feat. */ ! inline QuickenSpell::QuickenSpell (): ! MetamagicFeat (COST) { ! // empty constructor body } Index: SilentSpell.h =================================================================== RCS file: /cvsroot/ogs/dist/c++/ogs/magic/feats/SilentSpell.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** SilentSpell.h 5 Feb 2003 06:01:29 -0000 1.2 --- SilentSpell.h 15 Apr 2003 16:58:47 -0000 1.3 *************** *** 36,52 **** * component. A silent spell uses up a spell slot one level higher than * the spell's normal level. */ class SilentSpell: public ogs::magic::MetamagicFeat { public: ! int getAddedLevels () const; }; /** ! * Determine number of levels added to normal spell level. ! * ! * @return Number of added levels. */ ! int SilentSpell::getAddedLevels () const { ! return (1); } --- 36,63 ---- * component. A silent spell uses up a spell slot one level higher than * the spell's normal level. + * + * @todo + * This feat can be completely implemented. */ class SilentSpell: public ogs::magic::MetamagicFeat { public: ! /** ! * The cost of using this metamagic feat. Silent Spell feats use ! * up a spell slot 1 level higher than normal. ! */ ! static const Cost COST = 1; ! ! SilentSpell (); ! ! bool attachSpell (Spell& spell); ! bool detachSpell (Spell& spell); }; /** ! * Create a new Silent Spell metamagic feat. */ ! inline SilentSpell::SilentSpell (): ! MetamagicFeat (COST) { ! // empty constructor body } Index: StillSpell.h =================================================================== RCS file: /cvsroot/ogs/dist/c++/ogs/magic/feats/StillSpell.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** StillSpell.h 5 Feb 2003 06:01:29 -0000 1.2 --- StillSpell.h 15 Apr 2003 16:58:47 -0000 1.3 *************** *** 34,52 **** * A metamagic feat that allows spells to be cast without a somantic * component. This metamagic feat only applies to spells with somantic ! * component. A still spell uses up a spell slot one level higher than ! * the spell's normal level. */ class StillSpell: public ogs::magic::MetamagicFeat { public: ! int getAddedLevels () const; }; /** ! * Determine number of levels added to normal spell level. ! * ! * @return Number of added levels. */ ! int StillSpell::getAddedLevels () const { ! return (1); } --- 34,62 ---- * A metamagic feat that allows spells to be cast without a somantic * component. This metamagic feat only applies to spells with somantic ! * component. ! * ! * @todo ! * This feat can be completely implemented. */ class StillSpell: public ogs::magic::MetamagicFeat { public: ! /** ! * The cost of using this metamagic feat. Still Spell feats use ! * up a spell slot 1 level higher than normal. ! */ ! static const Cost COST = 1; ! ! StillSpell (); ! ! bool attachSpell (Spell& spell); ! bool detachSpell (Spell& spell); }; /** ! * Create a new Still Spell metamagic feat. */ ! inline StillSpell::StillSpell (): ! MetamagicFeat (COST) { ! // empty constructor body } |