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_MAGIC_LEVELRANGE_H
00026 # define OGS_MAGIC_LEVELRANGE_H
00027
00028 # include <ogs/core/Experience.h>
00029 # include <ogs/magic/AbsoluteRange.h>
00030 # include <ogs/magic/Namespace.h>
00031
00032 OGS_BEGIN_MAGIC_NAMESPACE
00033
00034 using ogs::core::XP;
00035
00044 class LevelRange: public AbsoluteRange {
00045 public:
00046 static LevelRange Close (XP::Level casterLevel);
00047 static LevelRange Medium (XP::Level casterLevel);
00048 static LevelRange Long (XP::Level casterLevel);
00049
00050 XP::Level getCasterLevel () const;
00051
00052 private:
00053 XP::Level casterLevel;
00054
00055 LevelRange (Range::Type type, float distance,
00056 XP::Level casterLevel);
00057 };
00058
00064 inline XP::Level LevelRange::getCasterLevel () const {
00065 return (this->casterLevel);
00066 }
00067
00068 OGS_END_MAGIC_NAMESPACE
00069
00070 # endif
00071
00072 #endif
00073