X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_sp%2FZonk.c;h=8656bdc85afa883fcd8673159037782ec891f2b8;hb=475d747d7f6122bf9b62ccf1518fc7e8fc0f201c;hp=d6a31acccd361beaff5cd0105d9d804ff3af97a6;hpb=b1750ae5f6404a4faacc38425e0b31c29ea12c37;p=rocksndiamonds.git diff --git a/src/game_sp/Zonk.c b/src/game_sp/Zonk.c index d6a31acc..8656bdc8 100644 --- a/src/game_sp/Zonk.c +++ b/src/game_sp/Zonk.c @@ -131,14 +131,10 @@ loc_g_0DE8: // zonk comes falling from above X = GetStretchX(si); Y = GetStretchY(si - FieldWidth); dx = bl & 0x7; -#if 1 - StretchedSprites.BltImg(X, Y, aniSpace, 0); - StretchedSprites.BltImg(X, Y + TwoPixels * (dx + 1), aniZonk, dx); -#else - StretchedSprites.BltEx(X, Y, 0); - StretchedSprites.BltEx(X, Y + TwoPixels * (dx + 1), fiZonk); -#endif + DDSpriteBuffer_BltImg(X, Y, aniSpace, 0); + DDSpriteBuffer_BltImg(X, Y + TwoPixels * (dx + 1), aniZonk, dx); // +++++++++++++++++++++++++++++++++++++++++++++++++++++ + bl = HighByte(PlayField16[si]) + 1; if (bl == 0x16) { @@ -183,7 +179,12 @@ loc_g_0DE8: // zonk comes falling from above if (ax == fiOrangeDisk) // OrangeDisk explodes 'loc_g_0E95: goto loc_g_0F75; +#if 1 + // play the zonk sound, 'cause zonk hits something "hard" + subSoundFX(si, fiZonk, actImpact); +#else subSoundFXZonk(); // play the zonk sound,'cause zonk hits something "hard" +#endif if (! (ax == fiZonk || ax == fiInfotron || ax == fiRAM)) return subAnimateZonks; @@ -211,7 +212,7 @@ loc_g_0EEA: // test if zonk may roll left goto loc_g_0D4C; MovHighByte(&PlayField16[si], 0x50); // zonk rolls left - Mov(&PlayField16[si - 1], 0x8888); // mark as zonk accessing? + PlayField16[si - 1] = 0x8888; // mark as zonk accessing? return subAnimateZonks; loc_g_0F00: // test if zonk may roll right @@ -219,7 +220,7 @@ loc_g_0F00: // test if zonk may roll right return subAnimateZonks; MovHighByte(&PlayField16[si], 0x60); // zonk rolls right - Mov(&PlayField16[si + 1], 0x8888); // mark as zonk accessing? + PlayField16[si + 1] = 0x8888; // mark as zonk accessing? return subAnimateZonks; loc_g_0F14: // Murphy dies, but not in any case @@ -267,14 +268,10 @@ loc_g_0F83: // zonk comes rolling from right to left X = GetStretchX(si + 1); Y = GetStretchY(si); dx = (bl & 0x7) + 1; -#if 1 - StretchedSprites.BltImg(X, Y, aniSpace, 0); - StretchedSprites.BltImg(X - (TwoPixels * dx), Y, aniZonkRollLeft, dx - 1); -#else - StretchedSprites.BltEx(X, Y, 0); - StretchedSprites.BltEx(X - (TwoPixels * dx), Y, aniFramesZonkRollLeft[dx - 1]); -#endif + DDSpriteBuffer_BltImg(X, Y, aniSpace, 0); + DDSpriteBuffer_BltImg(X - (TwoPixels * dx), Y, aniZonkRollLeft, dx - 1); // +++++++++++++++++++++++++++++++++++++++++++++++++++++ + bl = HighByte(PlayField16[si]) + 1; // get and increment sequence# if (bl == 0x24) PlayField16[si + 1] = 0xAAAA; @@ -304,14 +301,10 @@ loc_g_0FE8: // zonk comes rolling from left to right X = GetStretchX(si - 1); Y = GetStretchY(si); dx = (bl & 0x7) + 1; -#if 1 - StretchedSprites.BltImg(X, Y, aniSpace, 0); - StretchedSprites.BltImg(X + (TwoPixels * dx), Y, aniZonkRollRight, dx - 1); -#else - StretchedSprites.BltEx(X, Y, 0); - StretchedSprites.BltEx(X + (TwoPixels * dx), Y, aniFramesZonkRollRight[dx - 1]); -#endif + DDSpriteBuffer_BltImg(X, Y, aniSpace, 0); + DDSpriteBuffer_BltImg(X + (TwoPixels * dx), Y, aniZonkRollRight, dx - 1); // +++++++++++++++++++++++++++++++++++++++++++++++++++++ + bl = HighByte(PlayField16[si]) + 1; if (bl == 0x34) PlayField16[si - 1] = 0xAAAA; @@ -361,14 +354,10 @@ loc_g_107B: // zonk rolls left X = GetStretchX(si); Y = GetStretchY(si); dx = (bl & 0xF) + 1; -#if 1 - StretchedSprites.BltImg(X, Y, aniSpace, 0); - StretchedSprites.BltImg(X - (TwoPixels * dx), Y, aniZonkRollLeft, dx - 1); -#else - StretchedSprites.BltEx(X, Y, 0); - StretchedSprites.BltEx(X - (TwoPixels * dx), Y, aniFramesZonkRollLeft[dx - 1]); -#endif + DDSpriteBuffer_BltImg(X, Y, aniSpace, 0); + DDSpriteBuffer_BltImg(X - (TwoPixels * dx), Y, aniZonkRollLeft, dx - 1); // +++++++++++++++++++++++++++++++++++++++++++++++++++++ + bl = HighByte(PlayField16[si]) + 1; // retrieve and increment sequence# if (bl < 0x52) { @@ -403,14 +392,10 @@ loc_g_10E9: // zonk rolls right X = GetStretchX(si); Y = GetStretchY(si); dx = (bl & 0x7) + 1; -#if 1 - StretchedSprites.BltImg(X, Y, aniSpace, 0); - StretchedSprites.BltImg(X + (TwoPixels * dx), Y, aniZonkRollRight, dx - 1); -#else - StretchedSprites.BltEx(X, Y, 0); - StretchedSprites.BltEx(X + (TwoPixels * dx), Y, aniFramesZonkRollRight[dx - 1]); -#endif + DDSpriteBuffer_BltImg(X, Y, aniSpace, 0); + DDSpriteBuffer_BltImg(X + (TwoPixels * dx), Y, aniZonkRollRight, dx - 1); // +++++++++++++++++++++++++++++++++++++++++++++++++++++ + bl = HighByte(PlayField16[si]) + 1; if (bl < 0x62) { @@ -498,4 +483,3 @@ loc_g_16A7: return subCleanUpForZonksAbove; } // subCleanUpForZonksAbove -