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];
139 void MoverProcessCreate(
int X,
int Y,
int id,
MOVER *pMover);
142 enum AR_FUNCTION { AR_NORMAL, AR_PUSHREEL, AR_POPREEL, AR_WALKREEL };
144 void StoreMoverPalette(
MOVER *pMover,
int startColor,
int length);
146 void MoverBrightness(
MOVER *pMover,
int brightness);
148 MOVER *GetMover(
int ano);
149 MOVER *RegisterMover(
int ano);
150 void KillMover(
MOVER *pMover);
151 MOVER *GetLiveMover(
int index);
153 bool getMActorState(
MOVER *psActor);
154 int GetMoverId(
MOVER *pMover);
155 void SetMoverZ(
MOVER *pMover,
int y, uint32 zFactor);
156 void SetMoverZoverride(
MOVER *pMover, uint32 zFactor);
158 void HideMover(
MOVER *pMover,
int sf = 0);
159 bool MoverHidden(
MOVER *pMover);
160 bool MoverIs(
MOVER *pMover);
161 bool MoverIsSWalking(
MOVER *pMover);
162 bool MoverMoving(
MOVER *pMover);
163 int GetWalkNumber(
MOVER *pMover);
164 void UnHideMover(
MOVER *pMover);
166 void PositionMover(
MOVER *pMover,
int x,
int y);
168 void GetMoverPosition(
MOVER *pMover,
int *aniX,
int *aniY);
169 void GetMoverMidTop(
MOVER *pMover,
int *aniX,
int *aniY);
170 int GetMoverLeft(
MOVER *pMover);
171 int GetMoverRight(
MOVER *pMover);
172 int GetMoverTop(
MOVER *pMover);
173 int GetMoverBottom(
MOVER *pMover);
177 DIRECTION GetMoverDirection(
MOVER *pMover);
178 int GetMoverScale(
MOVER *pMover);
179 void SetMoverDirection(
MOVER *pMover, DIRECTION dirn);
180 void SetMoverStanding(
MOVER *pMover);
181 void SetMoverWalkReel(
MOVER *pMover, DIRECTION reel,
int scale,
bool force);
183 MOVER *InMoverBlock(
MOVER *pMover,
int x,
int y);
187 bool IsMAinEffectPoly(
int index);
188 void SetMoverInEffect(
int index,
bool tf);
190 void StopMover(
MOVER *pMover);
201 SCNHANDLE walkReels[REQ_TOTAL_SCALES][4];
202 SCNHANDLE standReels[REQ_TOTAL_SCALES][4];
203 SCNHANDLE talkReels[REQ_TOTAL_SCALES][4];
uint32 SCNHANDLE
Definition: dw.h:31
Definition: coroutines.h:300
int HPOLYGON
Definition: dw.h:34