X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fgame_sp%2FGlobals.h;h=36bf0f3a2251b29a3e80a3180037ebf8cfc8dfa3;hp=194f1b9dced8c95969514e4c55a9d5e88556bd2e;hb=855700d73bbef8bb1248fe0ac735738478d6044b;hpb=4591885cdbcfec145d1ac0510fed1519af1eea1d diff --git a/src/game_sp/Globals.h b/src/game_sp/Globals.h index 194f1b9d..36bf0f3a 100644 --- a/src/game_sp/Globals.h +++ b/src/game_sp/Globals.h @@ -13,10 +13,10 @@ #define True (!False) #endif -#define ScrollDelta ((long)1) +#define ScrollDelta ((int)1) #define ZoomFactor (2) -#define BaseWidth (ZoomFactor * 16) + #define StretchWidth (ZoomFactor * 16) #define TwoPixels (ZoomFactor * 2) @@ -68,12 +68,12 @@ #define fiRAMTop (38) #define fiRAMBottom (39) #define fiWallSpace (40) -#define fiHWTrash1 (41) -#define fiHWTrash2 (42) -#define fiHWMurphy (43) #define fiExplosion (0x1F) +#define fiFirst (0) +#define fiLast (40) + // ---------------------------------------------------------------------------- // graphics and animations (used at runtime to display the elements) @@ -142,7 +142,6 @@ #define aniMurphyYawn IMG_SP_MURPHY_BORING_1 #define aniPushLeft IMG_SP_MURPHY_PUSHING_LEFT #define aniPushRight IMG_SP_MURPHY_PUSHING_RIGHT -#define aniPushUpDown IMG_SP_MURPHY_PUSHING_RIGHT #define aniBugActivating IMG_SP_BUGGY_BASE_ACTIVATING #define aniBugDeactivating IMG_SP_BUGGY_BASE_ACTIVATING @@ -200,17 +199,6 @@ #define imgFrameVertical IMG_SP_FRAME_VERTICAL -extern int aniFramesBug[], aniFramesZonkRollRight[], aniFramesZonkRollLeft[]; -extern int aniFramesEatInfotronLeft[], aniFramesEatInfotronRight[]; -extern int aniFramesInfotronRollRight[], aniFramesInfotronRollLeft[]; -extern int aniFramesMurphyEatLeft[], aniFramesMurphyEatRight[]; -extern int aniFramesMurphyEatUpLeft[], aniFramesMurphyEatUpRight[], aniFramesSplitUpDown[]; -extern int aniFramesMurphyExit[]; -extern int aniFramesSnikSnak[], aniFramesElectron[], aniFramesExplosion[]; -extern int aniFramesTouchBase[], aniFramesTouchInfotron[], aniFramesTouchRedDisk[]; -extern int aniFramesYellowDisk[], aniFramesOrangeDisk[], aniFramesRedDisk[]; - - // ---------------------------------------------------------------------------- // input keys // ---------------------------------------------------------------------------- @@ -236,8 +224,8 @@ typedef struct { int Width; int Height; - long OffSet; - long Size; + int OffSet; + int Size; } LevelDescriptor; #define HAS_LevelDescriptor #endif @@ -277,23 +265,20 @@ typedef struct #endif -extern int GetSI(int X, int Y); -extern int GetStretchX(int si); -extern int GetStretchY(int si); -extern int GetX(int si); -extern int GetY(int si); -extern void InitGlobals(); +int GetSI(int X, int Y); +int GetStretchX(int si); +int GetStretchY(int si); +int GetX(int si); +int GetY(int si); +void InitGlobals(void); -extern void ReadLevel(); +void PrepareLevel(void); -extern int getSequenceLength(int sequence); -extern boolean isSnappingSequence(int sequence); +int getSequenceLength(int sequence); +boolean isSnappingSequence(int sequence); -extern void Trace(char *Source, char *Message); -extern void ReportError(char *Source, char *Message); - -extern int Min(int A, int B); -extern int Max(int A, int B); +int Min(int A, int B); +int Max(int A, int B); extern int fiGraphic[]; extern int aniSnikSnakTurningLeft[]; @@ -306,22 +291,36 @@ extern boolean menBorder; extern int *PlayField16; extern byte *PlayField8; -extern byte *DisPlayField; +extern byte DisPlayField[SP_MAX_PLAYFIELD_SIZE + SP_HEADER_SIZE]; extern int FieldHeight; extern int FieldMax, LevelMax; extern int FieldWidth; extern int FreezeZonks; extern int HeaderSize; -extern int LevelNumber; extern int TimerVar; extern short RandomSeed; -extern long FileMax; - extern LevelInfoType LInfo; -extern float Stretch; extern int ScrollMinX, ScrollMaxX, ScrollMinY, ScrollMaxY; extern int ScrollX, ScrollY; +extern int AllowRedDiskCheat, AllowEatRightRedDiskBug; +extern int Data_SubRest, Data_SubRstFlg; +extern int DemoKeyCode; +extern int GameBusyFlag; +extern int InfotronsNeeded, TotalInfotronsNeeded; +extern int KillMurphyFlag, MurphyMoveCounter; +extern int MurphyExplodePos, SplitMoveFlag, RedDiskReleaseMurphyPos; +extern int MurphyPosIndex, MurphyXPos, MurphyYPos; +extern int MurphyScreenXPos, MurphyScreenYPos; +extern int MurphyVarFaceLeft; +extern int RedDiskCount; +extern int RedDiskReleaseFlag, MovingPictureSequencePhase; +extern int RedDiskReleasePhase; +extern int ScratchGravity, GravityFlag; +extern int SnikSnaksElectronsFrozen; +extern int YellowDisksExploded; +extern int YawnSleepCounter; + #endif /* GLOBALS_H */