// Play a game/demo
// ==========================================================================
-void subMainGameLoop_Init()
+void subMainGameLoop_Init(void)
{
// This was a bug in the original Supaplex: sometimes red disks could not
// be released. This happened if Murphy was killed DURING a red disk release
TimerVar = TimerVar + 1;
-#if 1
if (ExplosionShakeMurphy > 0)
ExplosionShakeMurphy--;
-#endif
-#if 1
if (ExitToMenuFlag == 1)
{
// happens when demo ends or when Murphy enters exit (to be checked)
-
-#if 0
- goto locExitMainGameLoop;
-#endif
}
-#else
- if (ExitToMenuFlag == 1)
- goto locExitMainGameLoop;
-#endif
if (LeadOutCounter == 0) // no lead-out: game busy
return;
// lead-out done: exit now
// ---------------------- END OF GAME-BUSY LOOP (including lead-out) ---------
-#if 0
-locExitMainGameLoop:
-#endif
-
-#if 0
- printf("::: locExitMainGameLoop reached [%d]\n", LeadOutCounter);
- printf("::: [KillMurphyFlag == %d]\n", KillMurphyFlag);
-#endif
-
-#if 1
- /* if the game is not won when reaching this point, then it is lost */
- if (!game_sp.LevelSolved)
- game_sp.GameOver = TRUE;
-#endif
+ // if the game is not won when reaching this point, then it is lost
+ if (!game_sp.level_solved)
+ game_sp.game_over = TRUE;
}
-void subCalculateScreenScrollPos()
+void subCalculateScreenScrollPos(void)
{
-#if 1
int jump_pos = TILEX / 2;
- /* handle wrap-around */
+ // handle wrap-around
if (MurphyScreenXPos < -jump_pos)
{
MurphyScreenXPos = FieldWidth * TILEX + MurphyScreenXPos;
MurphyScreenXPos = MurphyScreenXPos - FieldWidth * TILEX;
MurphyScreenYPos += TILEY;
}
-#endif
if (ExplosionShake != 0)
{
subGetRandomNumber();
- // printf("::: ExplosionShake [%d]\n", FrameCounter);
+ // Debug("game:playing:SP", "ExplosionShake [%d]", FrameCounter);
}
ScreenScrollXPos = MurphyScreenXPos - (SCR_FIELDX / 2) * TILESIZE;