aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFilippos Karapetis2008-12-23 22:37:24 +0000
committerFilippos Karapetis2008-12-23 22:37:24 +0000
commit51c22d99050196c0ba528204e9db3609ae3e27ae (patch)
tree04ee9619b19bb770b26dd449bb58e67a826bfa1d
parenta150aea638988eaf76e712f2ab9365e570df0697 (diff)
downloadscummvm-rg350-51c22d99050196c0ba528204e9db3609ae3e27ae.tar.gz
scummvm-rg350-51c22d99050196c0ba528204e9db3609ae3e27ae.tar.bz2
scummvm-rg350-51c22d99050196c0ba528204e9db3609ae3e27ae.zip
Added stubs for the missing visual effect opcodes
svn-id: r35512
-rw-r--r--engines/made/screenfx.cpp39
-rw-r--r--engines/made/screenfx.h5
2 files changed, 44 insertions, 0 deletions
diff --git a/engines/made/screenfx.cpp b/engines/made/screenfx.cpp
index a4504ec6f6..9f71dfeff8 100644
--- a/engines/made/screenfx.cpp
+++ b/engines/made/screenfx.cpp
@@ -92,6 +92,10 @@ void ScreenEffects::run(int16 effectNum, Graphics::Surface *surface, byte *palet
vfx07(surface, palette, newPalette, colorCount);
break;
+ case 8:
+ vfx08(surface, palette, newPalette, colorCount);
+ break;
+
case 9: // "Checkerboard" effect
vfx09(surface, palette, newPalette, colorCount);
break;
@@ -128,6 +132,18 @@ void ScreenEffects::run(int16 effectNum, Graphics::Surface *surface, byte *palet
vfx17(surface, palette, newPalette, colorCount);
break;
+ case 18:
+ vfx18(surface, palette, newPalette, colorCount);
+ break;
+
+ case 19:
+ vfx19(surface, palette, newPalette, colorCount);
+ break;
+
+ case 20:
+ vfx20(surface, palette, newPalette, colorCount);
+ break;
+
default:
vfx00(surface, palette, newPalette, colorCount);
warning("Unimplemented visual effect %d", effectNum);
@@ -327,6 +343,12 @@ void ScreenEffects::vfx07(Graphics::Surface *surface, byte *palette, byte *newPa
setPalette(palette);
}
+void ScreenEffects::vfx08(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount) {
+ // TODO
+ warning("Unimplemented visual effect: 8");
+ vfx00(surface, palette, newPalette, colorCount);
+}
+
// "Checkerboard" effect
void ScreenEffects::vfx09(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount) {
for (int i = 0; i < 8; i++) {
@@ -448,5 +470,22 @@ void ScreenEffects::vfx17(Graphics::Surface *surface, byte *palette, byte *newPa
}
+void ScreenEffects::vfx18(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount) {
+ // TODO
+ warning("Unimplemented visual effect: 18");
+ vfx00(surface, palette, newPalette, colorCount);
+}
+
+void ScreenEffects::vfx19(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount) {
+ // TODO
+ warning("Unimplemented visual effect: 19");
+ vfx00(surface, palette, newPalette, colorCount);
+}
+
+void ScreenEffects::vfx20(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount) {
+ // TODO
+ warning("Unimplemented visual effect: 20");
+ vfx00(surface, palette, newPalette, colorCount);
+}
} // End of namespace Made
diff --git a/engines/made/screenfx.h b/engines/made/screenfx.h
index 61fb426c4c..18fcbd29ce 100644
--- a/engines/made/screenfx.h
+++ b/engines/made/screenfx.h
@@ -53,6 +53,7 @@ private:
void setBlendedPalette(byte *palette, byte *newPalette, int colorCount, int16 value, int16 maxValue);
void copyFxRect(Graphics::Surface *surface, int16 x1, int16 y1, int16 x2, int16 y2);
void copyRect(Graphics::Surface *surface, int16 x1, int16 y1, int16 x2, int16 y2);
+
void vfx00(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
void vfx01(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
void vfx02(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
@@ -61,6 +62,7 @@ private:
void vfx05(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
void vfx06(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
void vfx07(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
+ void vfx08(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
void vfx09(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
void vfx10(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
void vfx11(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
@@ -70,6 +72,9 @@ private:
void vfx15(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
void vfx16(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
void vfx17(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
+ void vfx18(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
+ void vfx19(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
+ void vfx20(Graphics::Surface *surface, byte *palette, byte *newPalette, int colorCount);
};
} // End of namespace Made