[Scummvm-git-logs] scummvm master -> 4a468b5368d5239ff17b92abc52f7cc25304b0f2
Strangerke
noreply at scummvm.org
Wed Apr 15 18:43:26 UTC 2026
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
4a468b5368 WAYNESWORLD: Implement an introPt4_caller1 for demo1
Commit: 4a468b5368d5239ff17b92abc52f7cc25304b0f2
https://github.com/scummvm/scummvm/commit/4a468b5368d5239ff17b92abc52f7cc25304b0f2
Author: Strangerke (arnaud.boutonne at gmail.com)
Date: 2026-04-15T20:42:41+02:00
Commit Message:
WAYNESWORLD: Implement an introPt4_caller1 for demo1
Changed paths:
engines/waynesworld/wwintro.cpp
engines/waynesworld/wwintro.h
engines/waynesworld/wwintro_demo1.cpp
engines/waynesworld/wwintro_full.cpp
diff --git a/engines/waynesworld/wwintro.cpp b/engines/waynesworld/wwintro.cpp
index f6661f3ffcf..1b37888eb8d 100644
--- a/engines/waynesworld/wwintro.cpp
+++ b/engines/waynesworld/wwintro.cpp
@@ -205,4 +205,33 @@ void WWIntro::introPt3_clean() {
_outlineSurface = _logoSurface = _backg2Surface = nullptr;
}
+bool WWIntro::introPt4_displayCallInTime() {
+ WWSurface *pt4Sub3Surface1 = new WWSurface(178, 21);
+ WWSurface *pt4Sub3Surface2 = new WWSurface(178, 21);
+ pt4Sub3Surface2->clear(0);
+ _vm->drawImageToSurface(_oanGxl, "callin.pcx", pt4Sub3Surface1, 0, 0);
+
+ for (int i = 0; i < 5; ++i) {
+ _vm->drawImageToScreen(_oanGxl, "backg1.pcx", 0, 15);
+ _vm->waitMillis(500);
+ if (_vm->_escPressed) {
+ break;
+ }
+ _vm->_screen->drawSurfaceTransparent(pt4Sub3Surface1, 66, 157);
+ _vm->waitMillis(500);
+ if (_vm->_escPressed) {
+ break;
+ }
+ }
+
+ delete pt4Sub3Surface1;
+ delete pt4Sub3Surface2;
+
+ if (_vm->_escPressed) {
+ return false;
+ }
+
+ return true;
+}
+
} // End of namespace WaynesWorld
diff --git a/engines/waynesworld/wwintro.h b/engines/waynesworld/wwintro.h
index bc2b4addfc4..440f501f79d 100644
--- a/engines/waynesworld/wwintro.h
+++ b/engines/waynesworld/wwintro.h
@@ -78,6 +78,7 @@ protected:
void sub2FEFB(int arg_refreshBackgFl, int arg_wBodyIndex, int arg_gBodyIndex, int arg_wHead1Index, int arg_gHead1Index, int arg_TextId);
void introPt3_init();
void introPt3_clean();
+ bool introPt4_displayCallInTime();
private:
void sub3009A(int textId);
@@ -100,7 +101,6 @@ private:
void introPt4_init();
bool introPt4_intro();
- bool introPt4_displayCallInTime();
bool introPt4_caller1();
bool introPt4_caller2();
bool introPt4_caller3();
@@ -122,6 +122,7 @@ private:
bool introPt4();
void introPt4_init();
bool introPt4_intro();
+ bool introPt4_caller1();
void introPt4_cleanup();
};
} // End of namespace WaynesWorld
diff --git a/engines/waynesworld/wwintro_demo1.cpp b/engines/waynesworld/wwintro_demo1.cpp
index 8cf2c94f98b..774e7ac8874 100644
--- a/engines/waynesworld/wwintro_demo1.cpp
+++ b/engines/waynesworld/wwintro_demo1.cpp
@@ -198,6 +198,10 @@ bool WWIntro_demo1::introPt4() {
introPt4_init();
if (!introPt4_intro()) {
retVal = false;
+ } else if (!introPt4_displayCallInTime()) {
+ retVal = false;
+ } else if (!introPt4_caller1()) {
+ retVal = false;
}
introPt4_cleanup();
@@ -251,6 +255,94 @@ bool WWIntro_demo1::introPt4_intro() {
return true;
}
+bool WWIntro_demo1::introPt4_caller1() {
+ for (int i = 0; i < 3; ++i) {
+ for (int j = 0; j < 15; ++j) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), 9, 0);
+ }
+ ++_startOawPos;
+ }
+
+ for (int i = 0; i < 3; ++i) {
+ for (int j = 0; j < 5; ++j) {
+ sub2FEFB(1, 0, 1, 0, _vm->getRandom(11), 1);
+ }
+ ++_startOagPos;
+
+ for (int j = 0; j < 5; ++j) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), 9, 0);
+ }
+ ++_startOawPos;
+ }
+ _vm->playSound("ok.abt", false);
+
+ for (int i = 0; i < 10; ++i) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), 9, 0);
+ }
+ ++_startOawPos;
+
+ for (int i = 0; i < 2; ++i) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), _vm->getRandom(11), 2);
+ _vm->waitSeconds(2);
+ }
+
+ _vm->playSound("shya!2.abt", false);
+
+ for (int j = 0; j < 10; ++j) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), 9, 0);
+ }
+ ++_startOawPos;
+
+ for (int i = 0; i < 3; ++i) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), _vm->getRandom(11), 2);
+ _vm->waitSeconds(2);
+ }
+
+ for (int j = 0; j < 15; ++j) {
+ sub2FEFB(1, 0, 1, 0, _vm->getRandom(11), 1);
+ }
+ ++_startOagPos;
+
+ _vm->playSound("not!.abt", true);
+
+ for (int i = 0; i < 3; ++i) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), _vm->getRandom(11), 2);
+ _vm->waitSeconds(2);
+ }
+
+ for (int i = 0; i < 2; ++i) {
+ for (int j = 0; j < 10; ++j) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), 9, 0);
+ }
+ ++_startOawPos;
+ }
+
+ for (int i = 0; i < 3; ++i) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), _vm->getRandom(11), 2);
+ _vm->waitSeconds(2);
+ }
+
+ for (int i = 0; i < 3; ++i) {
+ for (int j = 0; j < 15; ++j) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), 9, 0);
+ }
+ ++_startOawPos;
+ }
+
+ for (int i = 0; i < 5; ++i) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), _vm->getRandom(11), 2);
+ _vm->waitSeconds(2);
+ }
+ _vm->_sound->playSound("hello.abt", true);
+
+ for (int i = 0; i < 5; ++i) {
+ sub2FEFB(1, 0, 1, _vm->getRandom(3), 9, 0);
+ }
+ ++_startOawPos;
+
+ return true;
+}
+
void WWIntro_demo1::introPt4_cleanup() {
delete _vm->_fontWW;
_vm->_fontWW = nullptr;
diff --git a/engines/waynesworld/wwintro_full.cpp b/engines/waynesworld/wwintro_full.cpp
index d55b4c52847..e6033e51a94 100644
--- a/engines/waynesworld/wwintro_full.cpp
+++ b/engines/waynesworld/wwintro_full.cpp
@@ -428,35 +428,6 @@ bool WWIntro_full::introPt4_intro() {
return true;
}
-bool WWIntro_full::introPt4_displayCallInTime() {
- WWSurface *pt4Sub3Surface1 = new WWSurface(178, 21);
- WWSurface *pt4Sub3Surface2 = new WWSurface(178, 21);
- pt4Sub3Surface2->clear(0);
- _vm->drawImageToSurface(_oanGxl, "callin.pcx", pt4Sub3Surface1, 0, 0);
-
- for (int i = 0; i < 5; ++i) {
- _vm->drawImageToScreen(_oanGxl, "backg1.pcx", 0, 15);
- _vm->waitMillis(500);
- if (_vm->_escPressed) {
- break;
- }
- _vm->_screen->drawSurfaceTransparent(pt4Sub3Surface1, 66, 157);
- _vm->waitMillis(500);
- if (_vm->_escPressed) {
- break;
- }
- }
-
- delete pt4Sub3Surface1;
- delete pt4Sub3Surface2;
-
- if (_vm->_escPressed) {
- return false;
- }
-
- return true;
-}
-
bool WWIntro_full::introPt4_caller1() {
for (int i = 0; i < 3; ++i) {
for (int j = 0; j < 15; ++j) {
@@ -476,6 +447,7 @@ bool WWIntro_full::introPt4_caller1() {
}
}
++_startOagPos;
+
for (int j = 0; j < 10; ++j) {
sub2FEFB(1, 0, 1, _vm->getRandom(3), 9, 0);
if (_vm->_escPressed) {
More information about the Scummvm-git-logs
mailing list