[Scummvm-git-logs] scummvm master -> f2033f1c7a809b61acd70ecf0ab576c9c97fe39e

bluegr noreply at scummvm.org
Wed Jul 17 23:20:50 UTC 2024


This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
4f4426a03b DGDS: Rename HoC global 44 to sheckels (currency used in Istanbul)
f2033f1c7a DGDS: Add workarounds for the missing shell game op in HoC


Commit: 4f4426a03b45a1907c9083a2ea05ea449c4bc4c8
    https://github.com/scummvm/scummvm/commit/4f4426a03b45a1907c9083a2ea05ea449c4bc4c8
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2024-07-18T02:19:52+03:00

Commit Message:
DGDS: Rename HoC global 44 to sheckels (currency used in Istanbul)

Changed paths:
    engines/dgds/globals.cpp
    engines/dgds/globals.h


diff --git a/engines/dgds/globals.cpp b/engines/dgds/globals.cpp
index 1e02239eed6..91c96f6b2ad 100644
--- a/engines/dgds/globals.cpp
+++ b/engines/dgds/globals.cpp
@@ -227,7 +227,7 @@ public:
 
 HocGlobals::HocGlobals(Clock &clock) : Globals(clock), _unk82(1), _unk55(0),
 	_unkDlgFileNum(0), _unkDlgDlgNum(0),  _currentCharacter2(0), _currentCharacter(0),
-	_unk50(0), _unk49(0), _unk48(0), _unk47(0), _unk46(0), _unk45(0x3f), _unk44(0),
+	_unk50(0), _unk49(0), _unk48(0), _unk47(0), _unk46(0), _unk45(0x3f), _sheckels(0),
 	_unk43(0), _unk42(0), _unk41(0), _unk40(3), _unk39(0) {
 	_globals.push_back(new DetailLevelROGlobal(0x53));
 	_globals.push_back(new RWI16Global(0x52, &_unk82));
@@ -242,7 +242,7 @@ HocGlobals::HocGlobals(Clock &clock) : Globals(clock), _unk82(1), _unk55(0),
 	_globals.push_back(new RWI16Global(0x2F, &_unk47));
 	_globals.push_back(new RWI16Global(0x2E, &_unk46));
 	_globals.push_back(new RWI16Global(0x2D, &_unk45)); // TODO: Special update function FUN_1407_0784, palette related?
-	_globals.push_back(new RWI16Global(0x2C, &_unk44)); // dialog related..
+	_globals.push_back(new RWI16Global(0x2C, &_sheckels));	// used as currency in Istanbul
 	_globals.push_back(new RWI16Global(0x2B, &_unk43));
 	_globals.push_back(new RWI16Global(0x2A, &_unk42));
 	_globals.push_back(new RWI16Global(0x29, &_unk41));
@@ -258,7 +258,7 @@ Common::Error HocGlobals::syncState(Common::Serializer &s) {
 	s.syncAsSint16LE(_unk41);
 	s.syncAsSint16LE(_unk42);
 	s.syncAsSint16LE(_unk43);
-	s.syncAsSint16LE(_unk44);
+	s.syncAsSint16LE(_sheckels);
 	s.syncAsSint16LE(_unk45);
 	s.syncAsSint16LE(_unk46);
 	s.syncAsSint16LE(_unk47);
diff --git a/engines/dgds/globals.h b/engines/dgds/globals.h
index 4c600b3bc1f..7cc918d0e43 100644
--- a/engines/dgds/globals.h
+++ b/engines/dgds/globals.h
@@ -156,7 +156,7 @@ private:
 	int16 _unk41;
 	int16 _unk42;
 	int16 _unk43;
-	int16 _unk44;
+	int16 _sheckels;
 	int16 _unk45;
 	int16 _unk46;
 	int16 _unk47;


Commit: f2033f1c7a809b61acd70ecf0ab576c9c97fe39e
    https://github.com/scummvm/scummvm/commit/f2033f1c7a809b61acd70ecf0ab576c9c97fe39e
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2024-07-18T02:20:41+03:00

Commit Message:
DGDS: Add workarounds for the missing shell game op in HoC

Changed paths:
    engines/dgds/scene.cpp


diff --git a/engines/dgds/scene.cpp b/engines/dgds/scene.cpp
index 8a6e5629da3..9f43bed1d8a 100644
--- a/engines/dgds/scene.cpp
+++ b/engines/dgds/scene.cpp
@@ -760,6 +760,11 @@ bool Scene::runChinaOp(const SceneOp &op) {
 		break;
 	case kSceneOpShellGame:
 		// TODO: Shell game in scene 81 (accessible from scene 16)
+		// We set a high number of sheckels for now
+		engine->getGDSScene()->setGlobal(0x2C, 400);
+		// We clear the gambler's talk data, as it's not cleared
+		// by the game scripts
+		engine->getScene()->freeTalkData(8);
 		warning("TODO: Implement shell game");
 		break;
 	case kSceneOpOpenChinaStartIntro:




More information about the Scummvm-git-logs mailing list