[Scummvm-git-logs] scummvm master -> 63625e14f054e5b43e96f0611d4248ea3ed4fe15
dreammaster
noreply at scummvm.org
Sat Feb 25 05:37:15 UTC 2023
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
63625e14f0 MM: MM1: Support alt map strings in enhanced mode
Commit: 63625e14f054e5b43e96f0611d4248ea3ed4fe15
https://github.com/scummvm/scummvm/commit/63625e14f054e5b43e96f0611d4248ea3ed4fe15
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2023-02-24T21:36:57-08:00
Commit Message:
MM: MM1: Support alt map strings in enhanced mode
Changed paths:
devtools/create_mm/files/mm1/strings_en.yml
engines/mm/mm1/globals.cpp
engines/mm/mm1/globals.h
diff --git a/devtools/create_mm/files/mm1/strings_en.yml b/devtools/create_mm/files/mm1/strings_en.yml
index 2566d8378ce..235a7abe9f3 100644
--- a/devtools/create_mm/files/mm1/strings_en.yml
+++ b/devtools/create_mm/files/mm1/strings_en.yml
@@ -1292,7 +1292,7 @@ maps:
levitation1: "Luckily,your levitation spell saved you!"
levitation2: "Levitation saved you."
remains: "Smashed remains of stone statues\nseem suspiciously lifelike."
- map13e:
+ emap13:
levitation1: "Luckily, your levitation spell saved you!"
map14:
diff --git a/engines/mm/mm1/globals.cpp b/engines/mm/mm1/globals.cpp
index 83899db9198..dd5cf394b6f 100644
--- a/engines/mm/mm1/globals.cpp
+++ b/engines/mm/mm1/globals.cpp
@@ -22,6 +22,7 @@
#include "engines/engine.h"
#include "graphics/fonts/ttf.h"
#include "mm/mm1/globals.h"
+#include "mm/mm1/mm1.h"
#include "mm/shared/utils/engine_data.h"
#include "graphics/fontman.h"
@@ -95,6 +96,20 @@ bool Globals::load(bool isEnhanced) {
return true;
}
+const Common::String &Globals::operator[](const Common::String &name) {
+ if (g_engine->isEnhanced() && name.hasPrefix("maps.map")) {
+ // Map strings support having alternate versions in Enhanced version
+ Common::String altName = Common::String::format("maps.emap%s",
+ name.c_str() + 8);
+ if (_strings.contains(altName))
+ return _strings[altName];
+ }
+
+ assert(_strings.contains(name));
+ return _strings[name];
+}
+
+
void Globals::synchronize(Common::Serializer &s) {
s.syncAsByte(_startingTown);
diff --git a/engines/mm/mm1/globals.h b/engines/mm/mm1/globals.h
index fd6e46bb922..8efaf7aff94 100644
--- a/engines/mm/mm1/globals.h
+++ b/engines/mm/mm1/globals.h
@@ -85,10 +85,7 @@ public:
/**
* Returns a string
*/
- const Common::String &operator[](const Common::String &name) {
- assert(_strings.contains(name));
- return _strings[name];
- }
+ const Common::String &operator[](const Common::String &name);
/**
* Saves global data to/from savegames
More information about the Scummvm-git-logs
mailing list