static int subExplodeInfotron(int tsi, int cx);
static int subExplodeZonk(int tsi, int cx);
-static char *VB_Name = "modExplosions";
+// static char *VB_Name = "modExplosions";
// --- Option Explicit
// ==========================================================================
{
int subAnimateExplosion;
- int ax, bx, bl, X, Y;
+ // int ax, bx, bl, X, Y;
+ int ax, bl, X, Y;
if (LowByte(PlayField16[si]) != fiExplosion)
return subAnimateExplosion;
return subAnimateExplosion;
bl = HighByte(PlayField16[si]);
+#if 0
+ printf("::: subAnimateExplosion: %d [%d, %d] [%d]\n",
+ bl, PlayField16[si], si, FrameCounter);
+#endif
if ((bl & 0x80) != 0) // infotron explosion!
goto loc_g_28D0;
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si);
Y = GetStretchY(si);
- StretchedSprites.BltEx(X, Y, aniExplosion[bl]);
+ StretchedSprites.BltEx(X, Y, aniFramesExplosion[bl]);
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if (bl == 8)
{
void ExplodeFieldSP(int si)
{
- int ax, al, cx, dl, dh;
+ // int ax, al, cx, dl, dh;
+ int ax, cx, dl;
ax = LowByte(PlayField16[si]);
if (ax == fiHardWare)
ExplosionShake = 1; // something explodes
if (ax == fiMurphy)
+ {
+#if 1
+ printf("::: Explosions.c: ExplodeFieldSP(): killing murphy\n");
+#endif
+
KillMurphyFlag = 1;
+ }
if (ax == fiElectron)
{
LetExplodeFieldSP(si + FieldWidth, cx, dl);
LetExplodeFieldSP(si + FieldWidth + 1, cx, dl);
-loc_g_2C3B:
+ // loc_g_2C3B:
subSoundFXExplosion();
} // ExplodeFieldSP
return;
al = LowByte(PlayField16[tsi]);
+#if 0
+ printf("::: LetExplodeFieldSP: got %d [%d, %d] [%d]\n",
+ al, PlayField16[tsi], tsi, FrameCounter);
+#endif
switch (al)
{
case fiHardWare:
break;
case fiMurphy:
+#if 1
+ printf("::: Explosions.c: LetExplodeFieldSP(): killing murphy [%d]\n",
+ tsi);
+#endif
+
KillMurphyFlag = 1;
PlayField8[tsi] = dh;
PlayField16[tsi] = cx;
PlayField16[tsi] = cx;
break;
}
+
+ GfxGraphic[GetX(tsi)][GetY(tsi)] = -1;
}
static int subExplodeZonk(int tsi, int cx)
int ax, si;
-locloop_g_2919:
+ // locloop_g_2919:
for (si = 0; si <= LevelMax; si++)
{
ax = ByteToInt(PlayField8[si]);