X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fgame_sp%2FExplosions.c;h=4eded7b3444ea83a03b8e37d4143ec92ad692033;hp=ea9368c56b2830ca2d1da260756dd0b8f9584921;hb=e51177796149f37de339bda83558c3c49758be93;hpb=ce0bba1a070e5e64939491eb68087f68ef8fe870 diff --git a/src/game_sp/Explosions.c b/src/game_sp/Explosions.c index ea9368c5..4eded7b3 100644 --- a/src/game_sp/Explosions.c +++ b/src/game_sp/Explosions.c @@ -43,7 +43,8 @@ void subAnimateExplosion(int si) if (bl == 8) { PlayField16[si] = 0; - ExplosionShake = 0; // nothing explodes + ExplosionShake = 0; // nothing explodes + // ExplosionShakeMurphy = 0; // nothing explodes // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ GfxGraphic[GetX(si)][GetY(si)] = aniSpace; @@ -57,7 +58,8 @@ loc_g_28D0: // explosion produces infotron if (bl == 0x89) { PlayField16[si] = fiInfotron; - MovLowByte(&ExplosionShake, 0); // nothing explodes + MovLowByte(&ExplosionShake, 0); // nothing explodes + // MovLowByte(&ExplosionShakeMurphy, 0); // nothing explodes // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ GfxGraphic[GetX(si)][GetY(si)] = aniInfotron; @@ -88,14 +90,19 @@ void ExplodeFieldSP(int si) if (ax == fiHardWare) return; - ExplosionShake = 1; // something explodes + ExplosionShake = 1; // something explodes + if (ax == fiMurphy) { -#if 1 +#if 0 printf("::: Explosions.c: ExplodeFieldSP(): killing murphy\n"); #endif KillMurphyFlag = 1; + +#if 1 + ExplosionShakeMurphy = 30; // Murphy explodes +#endif } if (ax == fiElectron) @@ -161,7 +168,7 @@ static void LetExplodeFieldSP(int tsi, int cx, int dh) break; case fiMurphy: -#if 1 +#if 0 printf("::: Explosions.c: LetExplodeFieldSP(): killing murphy [%d]\n", tsi); #endif @@ -301,7 +308,7 @@ void subRedDiskReleaseExplosion() // !!! causes flicker -- fix in Murphy.c !!! GfxGraphic[GetX(si)][GetY(si)] = aniRedDisk; #else - StretchedSprites.BltImg(X, Y, aniRedDisk, 0); + DDSpriteBuffer_BltImg(X, Y, aniRedDisk, 0); #endif // +++++++++++++++++++++++++++++++++++++++++