25 #ifndef PEGASUS_NEIGHBORHOOD_SPOT_H 26 #define PEGASUS_NEIGHBORHOOD_SPOT_H 28 #include "common/array.h" 29 #include "common/endian.h" 31 #include "pegasus/constants.h" 34 class SeekableReadStream;
39 typedef byte SpotFlags;
48 static const SpotFlags kNoSpotFlags = 0;
49 static const SpotFlags kSpotLoopsMask = 1 << kSpotLoopsBit;
50 static const SpotFlags kSpotOnArrivalMask = 1 << kSpotOnArrivalBit;
51 static const SpotFlags kSpotOnTurnMask = 1 << kSpotOnTurnBit;
52 static const SpotFlags kSpotOnDoorOpenMask = 1 << kSpotOnDoorOpenBit;
54 static const SpotFlags kSpotTriggers = kSpotOnArrivalMask | kSpotOnTurnMask | kSpotOnDoorOpenMask;
61 static uint32 getResTag() {
return MKTAG(
'S',
'p',
'o',
't'); }
68 bool isEmpty() {
return movieStart == 0xffffffff; }
71 direction = kNoDirection;
72 srcFlags = kNoSpotFlags;
73 altCode = kNoAlternateID;
74 movieStart = 0xffffffff;
75 movieEnd = 0xffffffff;
76 dstFlags = kNoSpotFlags;
80 DirectionConstant direction;
88 Entry findEntry(RoomID room, DirectionConstant direction, SpotFlags srcFlags, AlternateID altCode);
Definition: algorithm.h:29
#define MKTAG(a0, a1, a2, a3)
Definition: endian.h:188
Definition: ai_action.h:33