Merge branch 'fixes' into main/rendor-staging
[ryzomcore.git] / ryzom / common / src / game_share / skills.h
blob937158b6af076460717d37f51e4054a4d93e169f
1 // Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
2 // Copyright (C) 2010 Winch Gate Property Limited
3 //
4 // This program is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU Affero General Public License as
6 // published by the Free Software Foundation, either version 3 of the
7 // License, or (at your option) any later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU Affero General Public License for more details.
14 // You should have received a copy of the GNU Affero General Public License
15 // along with this program. If not, see <http://www.gnu.org/licenses/>.
17 #ifndef RY_SKILLS_H
18 #define RY_SKILLS_H
20 #include "nel/misc/types_nl.h"
22 #include <string.h>
24 // NbSkills in enum : 225 Report this in database.xls
25 // BRIANCODE - adding an "any" enum AFTER NUM_SKILLS so I can check if "any" skill is level X or higher (for example)
27 namespace SKILLS
29 enum ESkills
31 SC = 0,
32 SCA,
33 SCAH,
34 SCAHB,
35 SCAHBE,
36 SCAHBEM,
37 SCAHG,
38 SCAHGE,
39 SCAHGEM,
40 SCAHH,
41 SCAHHE,
42 SCAHHEM,
43 SCAHP,
44 SCAHPE,
45 SCAHPEM,
46 SCAHS,
47 SCAHSE,
48 SCAHSEM,
49 SCAHV,
50 SCAHVE,
51 SCAHVEM,
52 SCAL,
53 SCALB,
54 SCALBE,
55 SCALBEM,
56 SCALG,
57 SCALGE,
58 SCALGEM,
59 SCALP,
60 SCALPE,
61 SCALPEM,
62 SCALS,
63 SCALSE,
64 SCALSEM,
65 SCALV,
66 SCALVE,
67 SCALVEM,
68 SCAM,
69 SCAMB,
70 SCAMBE,
71 SCAMBEM,
72 SCAMG,
73 SCAMGE,
74 SCAMGEM,
75 SCAMP,
76 SCAMPE,
77 SCAMPEM,
78 SCAMS,
79 SCAMSE,
80 SCAMSEM,
81 SCAMV,
82 SCAMVE,
83 SCAMVEM,
84 SCAS,
85 SCASB,
86 SCASBE,
87 SCASBEM,
88 SCASS,
89 SCASSE,
90 SCASSEM,
91 SCJ,
92 SCJA,
93 SCJAA,
94 SCJAAE,
95 SCJAAEM,
96 SCJB,
97 SCJBA,
98 SCJBAE,
99 SCJBAEM,
100 SCJD,
101 SCJDA,
102 SCJDAE,
103 SCJDAEM,
104 SCJE,
105 SCJEA,
106 SCJEAE,
107 SCJEAEM,
108 SCJP,
109 SCJPA,
110 SCJPAE,
111 SCJPAEM,
112 SCJR,
113 SCJRA,
114 SCJRAE,
115 SCJRAEM,
116 SCM,
117 SCM1,
118 SCM1A,
119 SCM1AE,
120 SCM1AEM,
121 SCM1D,
122 SCM1DE,
123 SCM1DEM,
124 SCM1M,
125 SCM1ME,
126 SCM1MEM,
127 SCM1P,
128 SCM1PE,
129 SCM1PEM,
130 SCM1S,
131 SCM1SE,
132 SCM1SEM,
133 SCM1T,
134 SCM1TE,
135 SCM1TEM,
136 SCM2,
137 SCM2A,
138 SCM2AE,
139 SCM2AEM,
140 SCM2M,
141 SCM2ME,
142 SCM2MEM,
143 SCM2P,
144 SCM2PE,
145 SCM2PEM,
146 SCM2S,
147 SCM2SE,
148 SCM2SEM,
149 SCMC,
150 SCMCA,
151 SCMCAE,
152 SCMCAEM,
153 SCR,
154 SCR1,
155 SCR1P,
156 SCR1PE,
157 SCR1PEM,
158 SCR2,
159 SCR2A,
160 SCR2AE,
161 SCR2AEM,
162 SCR2L,
163 SCR2LE,
164 SCR2LEM,
165 SCR2R,
166 SCR2RE,
167 SCR2REM,
169 SFM,
170 SFM1,
171 SFM1B,
172 SFM1BM,
173 SFM1BMM,
174 SFM1BS,
175 SFM1BSM,
176 SFM1P,
177 SFM1PS,
178 SFM1PSM,
179 SFM1S,
180 SFM1SA,
181 SFM1SAM,
182 SFM1SS,
183 SFM1SSM,
184 SFM2,
185 SFM2B,
186 SFM2BM,
187 SFM2BMM,
188 SFM2P,
189 SFM2PP,
190 SFM2PPM,
191 SFM2S,
192 SFM2SA,
193 SFM2SAM,
194 SFM2SS,
195 SFM2SSM,
196 SFMC,
197 SFMCA,
198 SFMCAD,
199 SFMCADM,
200 SFMCAH,
201 SFMCAHM,
202 SFR,
203 SFR1,
204 SFR1A,
205 SFR1AP,
206 SFR1APM,
207 SFR2,
208 SFR2A,
209 SFR2AA,
210 SFR2AAM,
211 SFR2AL,
212 SFR2ALM,
213 SFR2AR,
214 SFR2ARM,
216 SHF,
217 SHFD,
218 SHFDA,
219 SHFDAE,
220 SHFDAEM,
221 SHFF,
222 SHFFA,
223 SHFFAE,
224 SHFFAEM,
225 SHFJ,
226 SHFJA,
227 SHFJAE,
228 SHFJAEM,
229 SHFL,
230 SHFLA,
231 SHFLAE,
232 SHFLAEM,
233 SHFP,
234 SHFPA,
235 SHFPAE,
236 SHFPAEM,
238 SMD,
239 SMDA,
240 SMDAA,
241 SMDAAE,
242 SMDAAEM,
243 SMDH,
244 SMDHA,
245 SMDHAE,
246 SMDHAEM,
247 SMO,
248 SMOA,
249 SMOAA,
250 SMOAAE,
251 SMOAAEM,
252 SMOE,
253 SMOEA,
254 SMOEAE,
255 SMOEAEM,
257 NUM_SKILLS,
258 unknown,
259 any,
263 * get the right skill enum from the input string
264 * \param str the input string
265 * \return the ESkills associated to this string (Unknown if the string cannot be interpreted)
267 ESkills toSkill ( const std::string &str );
270 * get the right skill string from the gived enum
271 * \param skill the skill to convert
272 * \return the string associated to this enum number (Unknown if the enum number not exist)
274 const std::string& toString( uint16 skill );
277 * get the skill category name
278 * \param s is the enum number
279 * \return the string name of skill type (Unknown if the enum number not exist)
281 const std::string& getSkillCategoryName( uint16 s );
283 }; // SKILLS
285 #endif // RY_SKILLS_H
286 /* End of skills.h */