projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rnd-20100315-2-src
[rocksndiamonds.git]
/
src
/
game_sp
/
Zonk.c
diff --git
a/src/game_sp/Zonk.c
b/src/game_sp/Zonk.c
index fc6f5d96129c0b35e1311d535e66f613d4112648..b14af7eac5845d37788bf8f03c359b0fc07703d8 100644
(file)
--- a/
src/game_sp/Zonk.c
+++ b/
src/game_sp/Zonk.c
@@
-131,8
+131,13
@@
loc_g_0DE8: // zonk comes falling from above
X = GetStretchX(si);
Y = GetStretchY(si - FieldWidth);
dx = bl & 0x7;
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);
StretchedSprites.BltEx(X, Y, 0);
StretchedSprites.BltEx(X, Y + TwoPixels * (dx + 1), fiZonk);
+#endif
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
bl = HighByte(PlayField16[si]) + 1;
if (bl == 0x16)
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
bl = HighByte(PlayField16[si]) + 1;
if (bl == 0x16)
@@
-178,7
+183,12
@@
loc_g_0DE8: // zonk comes falling from above
if (ax == fiOrangeDisk) // OrangeDisk explodes 'loc_g_0E95:
goto loc_g_0F75;
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"
subSoundFXZonk(); // play the zonk sound,'cause zonk hits something "hard"
+#endif
if (! (ax == fiZonk || ax == fiInfotron || ax == fiRAM))
return subAnimateZonks;
if (! (ax == fiZonk || ax == fiInfotron || ax == fiRAM))
return subAnimateZonks;
@@
-206,7
+216,7
@@
loc_g_0EEA: // test if zonk may roll left
goto loc_g_0D4C;
MovHighByte(&PlayField16[si], 0x50); // zonk rolls 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
return subAnimateZonks;
loc_g_0F00: // test if zonk may roll right
@@
-214,7
+224,7
@@
loc_g_0F00: // test if zonk may roll right
return subAnimateZonks;
MovHighByte(&PlayField16[si], 0x60); // zonk rolls 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
return subAnimateZonks;
loc_g_0F14: // Murphy dies, but not in any case
@@
-262,8
+272,13
@@
loc_g_0F83: // zonk comes rolling from right to left
X = GetStretchX(si + 1);
Y = GetStretchY(si);
dx = (bl & 0x7) + 1;
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, Y, 0);
- StretchedSprites.BltEx(X - (TwoPixels * dx), Y, aniZonkRollLeft[dx - 1]);
+ StretchedSprites.BltEx(X - (TwoPixels * dx), Y, aniFramesZonkRollLeft[dx - 1]);
+#endif
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
bl = HighByte(PlayField16[si]) + 1; // get and increment sequence#
if (bl == 0x24)
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
bl = HighByte(PlayField16[si]) + 1; // get and increment sequence#
if (bl == 0x24)
@@
-294,8
+309,13
@@
loc_g_0FE8: // zonk comes rolling from left to right
X = GetStretchX(si - 1);
Y = GetStretchY(si);
dx = (bl & 0x7) + 1;
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, Y, 0);
- StretchedSprites.BltEx(X + (TwoPixels * dx), Y, aniZonkRollRight[dx - 1]);
+ StretchedSprites.BltEx(X + (TwoPixels * dx), Y, aniFramesZonkRollRight[dx - 1]);
+#endif
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
bl = HighByte(PlayField16[si]) + 1;
if (bl == 0x34)
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
bl = HighByte(PlayField16[si]) + 1;
if (bl == 0x34)
@@
-346,8
+366,13
@@
loc_g_107B: // zonk rolls left
X = GetStretchX(si);
Y = GetStretchY(si);
dx = (bl & 0xF) + 1;
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, Y, 0);
- StretchedSprites.BltEx(X - (TwoPixels * dx), Y, aniZonkRollLeft[dx - 1]);
+ StretchedSprites.BltEx(X - (TwoPixels * dx), Y, aniFramesZonkRollLeft[dx - 1]);
+#endif
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
bl = HighByte(PlayField16[si]) + 1; // retrieve and increment sequence#
if (bl < 0x52)
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
bl = HighByte(PlayField16[si]) + 1; // retrieve and increment sequence#
if (bl < 0x52)
@@
-383,8
+408,13
@@
loc_g_10E9: // zonk rolls right
X = GetStretchX(si);
Y = GetStretchY(si);
dx = (bl & 0x7) + 1;
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, Y, 0);
- StretchedSprites.BltEx(X + (TwoPixels * dx), Y, aniZonkRollRight[dx - 1]);
+ StretchedSprites.BltEx(X + (TwoPixels * dx), Y, aniFramesZonkRollRight[dx - 1]);
+#endif
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
bl = HighByte(PlayField16[si]) + 1;
if (bl < 0x62)
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
bl = HighByte(PlayField16[si]) + 1;
if (bl < 0x62)
@@
-473,4
+503,3
@@
loc_g_16A7:
return subCleanUpForZonksAbove;
} // subCleanUpForZonksAbove
return subCleanUpForZonksAbove;
} // subCleanUpForZonksAbove
-