23 #ifndef TINSEL_MOVERS_H // prevent multiple includes 24 #define TINSEL_MOVERS_H 26 #include "tinsel/anim.h" 27 #include "tinsel/scene.h" 28 #include "tinsel/tinsel.h" 34 enum NPS {NOT_IN, GOING_UP, GOING_DOWN, LEAVING, ENTERING};
36 enum IND {NO_PROB, TRY_CENTER, TRY_CORNER, TRY_NEXTCORNER};
38 enum DIRECTION { LEFTREEL, RIGHTREEL, FORWARD, AWAY };
40 #define NUM_MAINSCALES ((TinselVersion >= 2) ? 10 : 5) 41 #define NUM_AUXSCALES 5 42 #define TOTAL_SCALES (NUM_MAINSCALES + NUM_AUXSCALES) 43 #define REQ_MAIN_SCALES 10 44 #define REQ_TOTAL_SCALES 15 46 #define BOGUS_BRIGHTNESS -1 48 enum MOVER_TYPE { MOVER_2D, MOVER_3D };
54 int ItargetX, ItargetY;
55 int UtargetX, UtargetY;
82 int walkedFromX, walkedFromY;
100 SCNHANDLE standReels[REQ_TOTAL_SCALES][4];
101 SCNHANDLE talkReels[REQ_TOTAL_SCALES][4];
127 int posX, posY, posZ;
141 void MoverProcessCreate(
int X,
int Y,
int id,
MOVER *pMover);
144 enum AR_FUNCTION { AR_NORMAL, AR_PUSHREEL, AR_POPREEL, AR_WALKREEL };
146 void StoreMoverPalette(
MOVER *pMover,
int startColor,
int length);
148 void MoverBrightness(
MOVER *pMover,
int brightness);
150 MOVER *GetMover(
int ano);
151 MOVER *RegisterMover(
int ano);
152 void KillMover(
MOVER *pMover);
153 MOVER *GetLiveMover(
int index);
155 bool getMActorState(
MOVER *psActor);
156 int GetMoverId(
MOVER *pMover);
157 void SetMoverZ(
MOVER *pMover,
int y, uint32 zFactor);
158 void SetMoverZoverride(
MOVER *pMover, uint32 zFactor);
160 void HideMover(
MOVER *pMover,
int sf = 0);
161 bool MoverHidden(
MOVER *pMover);
162 bool MoverIs(
MOVER *pMover);
163 bool MoverIsSWalking(
MOVER *pMover);
164 bool MoverMoving(
MOVER *pMover);
165 int GetWalkNumber(
MOVER *pMover);
166 void UnHideMover(
MOVER *pMover);
168 void PositionMover(
MOVER *pMover,
int x,
int y);
170 void GetMoverPosition(
MOVER *pMover,
int *aniX,
int *aniY);
171 void GetMoverMidTop(
MOVER *pMover,
int *aniX,
int *aniY);
172 int GetMoverLeft(
MOVER *pMover);
173 int GetMoverRight(
MOVER *pMover);
174 int GetMoverTop(
MOVER *pMover);
175 int GetMoverBottom(
MOVER *pMover);
179 DIRECTION GetMoverDirection(
MOVER *pMover);
180 int GetMoverScale(
MOVER *pMover);
181 void SetMoverDirection(
MOVER *pMover, DIRECTION dirn);
182 void SetMoverStanding(
MOVER *pMover);
183 void SetMoverWalkReel(
MOVER *pMover, DIRECTION reel,
int scale,
bool force);
185 MOVER *InMoverBlock(
MOVER *pMover,
int x,
int y);
189 bool IsMAinEffectPoly(
int index);
190 void SetMoverInEffect(
int index,
bool tf);
192 void StopMover(
MOVER *pMover);
203 SCNHANDLE walkReels[REQ_TOTAL_SCALES][4];
204 SCNHANDLE standReels[REQ_TOTAL_SCALES][4];
205 SCNHANDLE talkReels[REQ_TOTAL_SCALES][4];
uint32 SCNHANDLE
Definition: dw.h:31
Definition: coroutines.h:300
int HPOLYGON
Definition: dw.h:34