-
Notifications
You must be signed in to change notification settings - Fork 4
/
GlobalDef.hpp
134 lines (112 loc) · 2.17 KB
/
GlobalDef.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#ifndef __GlobalDef
#define __GlobalDef
#define DND
#ifdef DND
#define Version "3.5"
#endif
#include <loki/SmartPtr.h>
#include <loki/StrongPtr.h>
namespace D20Rules
{
namespace Definitions
{
typedef unsigned int ScoreType;
typedef short int ModifierType;
typedef unsigned short int BaseType;
typedef float RankType;
typedef short int MiscType;
typedef short int ArmorBonusType;
typedef short int DodgeBonusType;
typedef short int ShieldBonusType;
typedef short int NaturalArmorBonusType;
typedef short int SizeModifierType;
typedef short int DefelectionModifierType;
typedef unsigned short int LevelType;
typedef unsigned short int ChallengeRatingType;
typedef unsigned long int XPType;
typedef short int RangePenaltyType;
typedef short int HPType;
typedef unsigned short int BaseAttackType;
/*typedef unsigned int ClassAttributeType;
typedef unsigned int FeatAttributeType;
typedef unsigned int FeatPrerequisitesAttributeType;
typedef unsigned int ItemAttributeType;*/
typedef unsigned short int WeightType;
typedef unsigned short int HeightType;
typedef unsigned short int SpeedType;
enum RelatedModifier
{
modStrength = 0,
modDexterity,
modConstitution,
modWisdom,
modIntelligence,
modCharisma
};
enum BaseAttackRating
{
barPoor,
barAverage,
barGood
};
enum SavingThrowRating
{
strPoor,
strGood
};
enum RelatedSavingThrow
{
stFortitude,
stReflex,
stWill
};
enum Size
{
Fine,
Diminutive,
Tiny,
Small,
Medium,
Large,
Huge,
Gargantuan,
Colossal
};
enum Dice
{
d2 = 2,
d3 = 3,
d4 = 4,
d6 = 6,
d8 = 8,
d10 = 10,
d12 = 12,
d20 = 20,
d100 = 100
};
enum CharacterAlignment
{
LawfulGood,
NaturalGood,
ChaoticGood,
LawfulNatural,
TrueNatural,
ChaoticNatural,
LawfulEvil,
NaturalEvil,
ChaoticEvil
};
enum LoadCarrying
{
LightLoad,
MediumLoad,
HeavyLoad
};
template <class DataType, class SourceType>
Loki::StrongPtr<DataType, false> getData(SourceType &obj)
{
return obj.Data;
}
}
}
#endif