xoreos  0.0.5
types.h
Go to the documentation of this file.
1 /* xoreos - A reimplementation of BioWare's Aurora engine
2  *
3  * xoreos is the legal property of its developers, whose names
4  * can be found in the AUTHORS file distributed with this source
5  * distribution.
6  *
7  * xoreos is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License
9  * as published by the Free Software Foundation; either version 3
10  * of the License, or (at your option) any later version.
11  *
12  * xoreos is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with xoreos. If not, see <http://www.gnu.org/licenses/>.
19  */
20 
25 #ifndef ENGINES_NWN_TYPES_H
26 #define ENGINES_NWN_TYPES_H
27 
28 #include "src/common/types.h"
29 #include "src/common/ustring.h"
30 
31 namespace Engines {
32 
33 namespace NWN {
34 
36 enum ObjectType {
38  kObjectTypeItem = 1U << 1,
39  kObjectTypeTrigger = 1U << 2,
40  kObjectTypeDoor = 1U << 3,
44  kObjectTypeStore = 1U << 7,
46 
48  kObjectTypeAll = 0x7FFF,
49 
50  kObjectTypeMAX = 0x7FFF,
51 
52  kObjectTypeArea = 1U << 29,
53  kObjectTypeModule = 1U << 30,
54  kObjectTypeSelf = 1U << 31
55 };
56 
57 enum Script {
97 };
98 
99 enum Animation {
156 };
157 
178 };
179 
180 enum SFFSounds {
186  kSSFHelp = 5,
188  kSSFFlee = 7,
191  kSSFHold = 10,
199  kSSFDeath = 18,
210  kSSFCanDo = 29,
215  kSSFHello = 34,
216  kSSFYes = 35,
217  kSSFNo = 36,
218  kSSFStop = 37,
219  kSSFRest = 38,
220  kSSFBored = 39,
223  kSSFLaugh = 42,
224  kSSFCuss = 43,
225  kSSFCheer = 44,
230 };
231 
233  kDifficultyVeryEasy = 0, // Not in the options dialog?!?
237  kDifficultyCoreRules = 4 // "Very difficult"
238 };
239 
247 };
248 
249 enum Ability {
257 };
258 
259 enum Alignment {
266 };
267 
268 enum Gender {
274 };
275 
276 static const uint32 kActionInvalid = 0xFFFF;
277 
278 static const uint32 kRaceInvalid = 28;
279 static const uint32 kClassInvalid = 255;
280 
283 
290 Common::UString getCreatureAnimationName(Animation animation, bool simple = false);
291 
294 
297 
305 Common::UString getDoorAnimationName(Animation animation, bool alternate = false);
306 
308 bool isAnimationLooping(Animation animation);
309 
310 } // End of namespace NWN
311 
312 } // End of namespace Engines
313 
314 #endif // ENGINES_NWN_TYPES_H
Common::UString getDoorAnimationName(Animation animation, bool alternate)
Return the name (as found in the models) of a specific door animation.
Definition: types.cpp:151
A class holding an UTF-8 string.
Definition: ustring.h:48
Common::UString getCreatureAnimationName(Animation animation, bool simple)
Return the name (as found in the models) of a specific creature animation.
Definition: types.cpp:61
uint8_t uint8
Definition: types.h:200
GameDifficulty
Definition: types.h:232
Fake value to describe the calling object in a script.
Definition: types.h:54
static const uint32 kClassInvalid
Definition: types.h:279
Fake value for an area object.
Definition: types.h:52
Fake value for a module object.
Definition: types.h:53
static const uint32 kActionInvalid
Definition: types.h:276
Low-level type definitions to handle fixed width types portably.
Alignment getAlignmentGoodEvil(uint8 goodEvil)
Definition: types.cpp:42
static const uint32 kRaceInvalid
Definition: types.h:278
ObjectType
Object type, matches the bitfield in nwscript.nss.
Definition: types.h:36
Unicode string handling.
bool isAnimationLooping(Animation animation)
Return true if the specified animation allows looping.
Definition: types.cpp:166
uint32_t uint32
Definition: types.h:204
Common::UString getPlaceableAnimationName(Animation animation)
Return the name (as found in the models) of a specific placeable animation.
Definition: types.cpp:136
Alignment getAlignmentLawChaos(uint8 lawChaos)
Definition: types.cpp:33
Common::UString getCreatureTalkAnimationName(TalkAnimation animation)
Return the name (as found in the models) of a specific creature talk animation.
Definition: types.cpp:120