22 #ifndef NANCY_COMMONYPES_H 23 #define NANCY_COMMONYPES_H 25 #include "common/rect.h" 26 #include "common/array.h" 27 #include "common/language.h" 28 #include "common/path.h" 29 #include "common/str.h" 30 #include "math/vector3d.h" 33 class SeekableReadStream;
48 static const int8 kFlagNoLabel = -1;
49 static const int8 kEvNoEvent = -1;
50 static const int8 kFrNoFrame = -1;
51 static const uint16 kNoScene = 9999;
54 static const byte kInvItemUseThenLose = 0;
55 static const byte kInvItemKeepAlways = 1;
56 static const byte kInvItemReturn = 2;
57 static const byte kInvItemNewSceneView = 3;
60 static const byte kInvSoundOverrideCommandNoSound = 0;
61 static const byte kInvSoundOverrideCommandTurnOff = 1;
62 static const byte kInvSoundOverrideCommandNewSound = 2;
63 static const byte kInvSoundOverrideCommandICant = 3;
66 static const byte kFlagEvent = 1;
67 static const byte kFlagInventory = 2;
68 static const byte kFlagCursor = 3;
71 static const byte kPanNone = 0;
72 static const byte kPan360 = 1;
73 static const byte kPanLeftRight = 2;
76 static const byte kContinueSceneSound = 1;
77 static const byte kLoadSceneSound = 0;
80 static const uint16 kInvertedNode = 77;
81 static const uint16 kNoAutoScroll = 333;
84 static const byte kAbsoluteClockBump = 1;
85 static const byte kRelativeClockBump = 2;
88 static const byte kPlayerDay = 0;
89 static const byte kPlayerNight = 1;
90 static const byte kPlayerDuskDawn = 2;
93 static const byte kSmallVideoFormat = 1;
94 static const byte kLargeVideoFormat = 2;
96 static const byte kVideoPlaytypeAVF = 0;
97 static const byte kVideoPlaytypeBink = 1;
100 static const byte kPlayOverlayPlain = 1;
101 static const byte kPlayOverlayTransparent = 2;
103 static const byte kPlayOverlaySceneChange = 1;
104 static const byte kPlayOverlayNoSceneChange = 2;
106 static const byte kPlayOverlayStatic = 1;
107 static const byte kPlayOverlayAnimated = 2;
109 static const byte kPlayOverlayOnce = 1;
110 static const byte kPlayOverlayLoop = 2;
112 static const byte kPlayOverlayForward = 1;
113 static const byte kPlayOverlayReverse = 2;
115 static const byte kPlayOverlayWithHotspot = 1;
116 static const byte kPlayOverlayNoHotspot = 2;
119 static const byte kNoChangeTableValue = 0;
120 static const byte kIncrementTableValue = 1;
121 static const byte kDecrementTableValue = 2;
122 static const uint16 kNoTableIndex = 99;
123 static const int16 kNoTableValue = 9999;
126 static const uint16 kListLIFO = 0;
127 static const uint16 kListFIFO = 1;
130 static const byte kRotateAroundX = 0;
131 static const byte kRotateAroundY = 1;
132 static const byte kRotateAroundZ = 2;
134 enum MovementDirection : byte { kUp = 1, kDown = 2, kLeft = 4, kRight = 8, kMoveFast = 16 };
137 namespace NancyState {
140 kBoot, kLogo, kCredits, kMap,
141 kMainMenu, kLoadSave, kSetup,
142 kHelp, kScene, kSaveDialog,
153 uint16 sceneID = kNoScene;
155 uint16 verticalOffset = 0;
156 uint16 continueSceneSound = kLoadSceneSound;
160 Math::Vector3d listenerFrontVector = Math::Vector3d(0, 0, 1);
161 uint16 frontVectorFrameID = 0;
191 uint16 staticRectID = 0;
192 uint hasHotspot = kPlayOverlayNoHotspot;
208 int16 frameID = kFrNoFrame;
219 uint32 minTimeDelay = 500;
220 uint32 maxTimeDelay = 2000;
222 int32 randomMoveMinX = 0;
223 int32 randomMoveMaxX = 0;
224 int32 randomMoveMinY = 0;
225 int32 randomMoveMaxY = 0;
226 int32 randomMoveMinZ = 0;
227 int32 randomMoveMaxZ = 0;
233 uint32 moveStepTime = 1000;
234 int32 numMoveSteps = 10;
236 int32 linearMoveStartX = 0;
237 int32 linearMoveEndX = 0;
238 int32 linearMoveStartY = 0;
239 int32 linearMoveEndY = 0;
240 int32 linearMoveStartZ = 0;
241 int32 linearMoveEndZ = 0;
243 int32 rotateMoveStartX = 0;
244 int32 rotateMoveStartY = 0;
245 int32 rotateMoveStartZ = 0;
246 byte rotateMoveAxis = kRotateAroundY;
248 uint32 minDistance = 0;
249 uint32 maxDistance = 0;
257 uint16 channelID = 0;
258 uint16 playCommands = 1;
261 uint16 panAnchorFrame = 0;
262 uint32 samplesPerSec = 0;
263 bool isPanning =
false;
275 enum class StaticDataConditionType { kEvent = 0, kInventory = 1, kDifficulty = 2 };
314 byte numSceneSpecificChannels;
324 uint16 numItems = 11;
325 uint16 numEventFlags = 168;
328 uint16 numCursorTypes = 4;
329 uint32 logoEndAfter = 7000;
330 int16 wonGameFlagID = -1;
354 static const uint kRecordSize = 239;
361 uint32 destUsesGameFrameOffset = 0;
362 uint32 hoverEnableFlag = 0;
363 uint32 hoverCursorFlag = 0;
364 uint32 secondaryStateField = 0;
365 uint32 initialState = 0;
366 uint32 reservedField = 0;
373 static const uint kRecordSize = 247;
381 static const uint kRecordSize = 198;
388 uint32 destUsesGameFrameOffset = 0;
390 uint32 isDraggable = 0;
392 uint32 orientation = 0;
393 uint32 positionHint = 0;
394 uint32 secondaryStateField = 0;
395 uint32 initialState = 0;
402 uint32 unknownHeaderField = 0;
403 int16 linkbackScene = 9999;
408 uint32 overlayInGameFrame = 0;
411 uint32 secondaryButtonEnabled = 0;
413 uint32 sliderEnabled = 0;
419 #endif // NANCY_COMMONYPES_H Definition: commontypes.h:200
Definition: commontypes.h:322
Definition: commontypes.h:152
Definition: commontypes.h:276
Definition: commontypes.h:302
Definition: commontypes.h:278
Definition: commontypes.h:380
Definition: commontypes.h:218
Definition: commontypes.h:189
Definition: commontypes.h:295
Definition: commontypes.h:172
Definition: commontypes.h:312
Definition: algorithm.h:29
Definition: commontypes.h:255
Definition: commontypes.h:167
Definition: commontypes.h:207
Definition: commontypes.h:181
Definition: commontypes.h:287
Definition: actionmanager.h:32
Language
Definition: language.h:45