projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rnd-20091020-2-src
[rocksndiamonds.git]
/
src
/
game_sp
/
DoGameStuff.c
diff --git
a/src/game_sp/DoGameStuff.c
b/src/game_sp/DoGameStuff.c
index baa11022c8085c7120a32a69ecdce7b5fb6dcc15..d41da8c37157b22de6391797f33366ae4b652282 100644
(file)
--- a/
src/game_sp/DoGameStuff.c
+++ b/
src/game_sp/DoGameStuff.c
@@
-7,7
+7,8
@@
static void CallAnimation(int si, byte bl);
static boolean IsToBeAnimated(int bl);
static void CallAnimation(int si, byte bl);
static boolean IsToBeAnimated(int bl);
-static char *VB_Name = "modDoGameStuff";
+// static char *VB_Name = "modDoGameStuff";
+
// --- Option Explicit
int *AnimationPosTable;
// --- Option Explicit
int *AnimationPosTable;
@@
-24,7
+25,7
@@
int subDoGameStuff()
int si, cx, dx, bl;
int si, cx, dx, bl;
- subAnimateMurphy(MurphyPosIndex); // move Murphy in any direction
+ subAnimateMurphy(
&
MurphyPosIndex); // move Murphy in any direction
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// Build a database of locations and subs-to-call of animatable fields only:
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// Build a database of locations and subs-to-call of animatable fields only:
@@
-65,16
+66,44
@@
int subDoGameStuff()
} // loop locloop_g_22B8 ' until all animatables done
}
} // loop locloop_g_22B8 ' until all animatables done
}
+#if 0
+ printf("::: DoGameStuff.c: KillMurphyFlag == %d [%d]\n",
+ KillMurphyFlag, MurphyMoveCounter);
+#endif
+
// All animations are done now
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if (KillMurphyFlag == 1 || MurphyMoveCounter == 0)
{
// All animations are done now
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if (KillMurphyFlag == 1 || MurphyMoveCounter == 0)
{
+#if 1
+ if (LeadOutCounter == 0 && !game_sp_info.LevelSolved)
+#else
if (LeadOutCounter == 0)
if (LeadOutCounter == 0)
+#endif
{
{
+#if 1
+ printf("::: DoGameStuff.c: killing murphy [%d] ...\n", KillMurphyFlag);
+#endif
+
KillMurphyFlag = 0; // no more "kill Murphy"
ExplodeFieldSP(MurphyExplodePos); // Explode
LeadOutCounter = 0x40; // quit: start lead-out
}
KillMurphyFlag = 0; // no more "kill Murphy"
ExplodeFieldSP(MurphyExplodePos); // Explode
LeadOutCounter = 0x40; // quit: start lead-out
}
+
+#if 1
+ if (KillMurphyFlag == 1 &&
+ !game_sp_info.LevelSolved &&
+ !game_sp_info.GameOver)
+ {
+#if 1
+ printf("::: DoGameStuff.c: !!!!!!!!!! GAME OVER !!!!!!!!!!\n");
+#endif
+
+ game_sp_info.GameOver = TRUE;
+ }
+#endif
+
+
} // loc_g_22FB:
} // loc_g_22FB: