00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifdef __cplusplus
00024
00025 # ifndef OGS_FEATS_IMPROVED_INITIATIVE_H
00026 # define OGS_FEATS_IMPROVED_INITIATIVE_H
00027
00028 # include <ogs/core/Feat.h>
00029 # include <ogs/core/Modifier.h>
00030 # include <ogs/feats/Namespace.h>
00031
00032 OGS_BEGIN_FEATS_NAMESPACE
00033
00037 class ImprovedInitiative: public ogs::core::Feat {
00038 public:
00039 ImprovedInitiative ();
00040
00041 bool attachObject (Object& object);
00042 bool detachObject ();
00043 ogs::core::Feat::Compatibility getCompatibility () const;
00044 ogs::core::Feat::Group getGroup () const;
00045
00046 private:
00047 static ogs::core::Modifier _modifier;
00048
00049 bool canAttach (const Object& object) const;
00050 };
00051
00058 inline ogs::core::Feat::Compatibility
00059 ImprovedInitiative::getCompatibility () const {
00060 return (ogs::core::Feat::EXCLUSIVE);
00061 }
00062
00069 inline ogs::core::Feat::Group
00070 ImprovedInitiative::getGroup () const {
00071 return (ogs::core::Feat::GENERAL);
00072 }
00073
00074 OGS_END_FEATS_NAMESPACE
00075
00076 # endif
00077
00078 #endif
00079