[Scummvm-git-logs] scummvm master -> c6e2cfb6e6ca766a60345120824b51faae7f1c19
sev-
noreply at scummvm.org
Sun Mar 5 00:25:13 UTC 2023
This automated email contains information about 9 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
6f7404151d DRAGONS: Convert copyright screen to uint16
2efc7fb55e DRAGONS: Add localized copyright for DE/FR
e096f5ef39 DRAGONS: Add GRB copyright text
fc4fdd4de1 DRAGONS: Hide "previews" menuitem on non-US releases
125468533e DRAGONS: Fix copyright blank lines to match original
4c59e2c23a DRAGONS: Add localized main menu
aae59da8e8 DRAGONS: Fix alignment of French main menu
c07bbf1a5a DRAGONS: Add blank line to GBR copyright
c6e2cfb6e6 DRAGONS: Convert uint texts to standard char
Commit: 6f7404151d5fa94c436391cfe5fbe336c0b46308
https://github.com/scummvm/scummvm/commit/6f7404151d5fa94c436391cfe5fbe336c0b46308
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00
Commit Message:
DRAGONS: Convert copyright screen to uint16
Changed paths:
engines/dragons/dragons.cpp
diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index b06636c29c0..cd2eac9188e 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1596,27 +1596,41 @@ void DragonsEngine::initSubtitleFlag() {
}
}
-int centerText(const char *text) {
- return 0x14 - (strlen(text) / 2 + 1);
+uint32 wideStrLen(uint16 *text) {
+ int i = 0;
+ while (text[i] != 0) {
+ i++;
+ }
+ return i;
+}
+
+int centerText(uint16 *text) {
+ return 0x14 - (wideStrLen(text) / 2 + 1);
}
void DragonsEngine::mainMenu() {
_inMenu = true;
//TODO need to support other languages.
- const char copyright[6][40] = {
- "Crystal Dynamics is a trademark",
- "of Crystal Dynamics.",
- "Blazing Dragons is a trademark and",
- "copyright of Terry Jones and is",
- "used with permission.",
- "Licensed by Nelvana Marketing Inc."
+ uint16 copyright[6][40] = {
+ { 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,\
+ 0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
+ { 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
+ { 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61,\
+ 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0 },
+ { 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a,\
+ 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x73, 0 },
+ { 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,\
+ 0x2e, 0 },
+ { 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,\
+ 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 }
};
+
const char menuItems[3][40] = {
"Start",
"Options",
"Previews"
};
-
+
_screen->clearScreen();
Actor *actor = _actorManager->loadActor(0xd9,0,0,0,3);
actor->setFlag(ACTOR_FLAG_8000);
@@ -1627,7 +1641,7 @@ void DragonsEngine::mainMenu() {
_screen->loadPalette(0, _cursor->getPalette()); //actor->_actorResource->getPalette());
for (int i = 0; i < 6; i++) {
- _fontManager->addAsciiText(centerText(©right[i][0]) * 8, (0x12 + i) * 8, ©right[i][0], strlen(copyright[i]), 1);
+ _fontManager->addText(centerText(copyright[i]) * 8, (0x12 + i) * 8, copyright[i], wideStrLen(copyright[i]), 1);
}
waitForFramesAllowSkip(400);
Commit: 2efc7fb55ee8af6ae77fc6d9c3735c317e130059
https://github.com/scummvm/scummvm/commit/2efc7fb55ee8af6ae77fc6d9c3735c317e130059
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00
Commit Message:
DRAGONS: Add localized copyright for DE/FR
Changed paths:
engines/dragons/dragons.cpp
diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index cd2eac9188e..662cf88240e 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1610,19 +1610,65 @@ int centerText(uint16 *text) {
void DragonsEngine::mainMenu() {
_inMenu = true;
- //TODO need to support other languages.
- uint16 copyright[6][40] = {
- { 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,\
- 0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
- { 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
- { 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61,\
- 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0 },
- { 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a,\
- 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x73, 0 },
- { 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,\
- 0x2e, 0 },
- { 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,\
- 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 }
+
+ int lang_index, y_offset;
+
+ uint16 copyright[3][11][40] = {
+ { // ENGLISH
+ { 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
+ 0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
+ { 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
+ { 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61,
+ 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0 },
+ { 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a,
+ 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x73, 0 },
+ { 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x2e, 0 },
+ { 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,
+ 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
+ { 0 },
+ },
+ { // GERMAN
+ { 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x74,
+ 0x20, 0x65, 0x69, 0x6e, 0x20, 0x57, 0x61, 0x72, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0 },
+ { 0x76, 0x6f, 0x6e, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0 },
+ { 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x74, 0x20,
+ 0x65, 0x69, 0x6e, 0x20, 0x67, 0x65, 0x73, 0x63, 0x68, 0x81, 0x74, 0x7a, 0x74, 0x65, 0x73, 0 },
+ { 0x57, 0x61, 0x72, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0x20, 0x76, 0x6f, 0x6e, 0x20, 0x54, 0x65, 0x72,
+ 0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0 },
+ { 0x75, 0x6e, 0x64, 0x20, 0x77, 0x69, 0x72, 0x64, 0x20, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x4c, 0x69, 0x7a, 0x65, 0x6e,
+ 0x7a, 0x20, 0x76, 0x65, 0x72, 0x77, 0x65, 0x6e, 0x64, 0x65, 0x74, 0x2e, 0 },
+ { 0x4c, 0x69, 0x7a, 0x65, 0x6e, 0x7a, 0x69, 0x65, 0x72, 0x74, 0x20, 0x64, 0x75, 0x72, 0x63, 0x68, 0 },
+ { 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e,
+ 0x63, 0x2e, 0 },
+ { 0x20, 0 },
+ { 0x53, 0x70, 0x69, 0x65, 0x6c, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0 },
+ { 0x63, 0x20, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d,
+ 0x69, 0x63, 0x73, 0x2e, 0 },
+ { 0x41, 0x6c, 0x6c, 0x65, 0x20, 0x52, 0x65, 0x63, 0x68, 0x74, 0x65, 0x20, 0x56, 0x6f, 0x72, 0x62, 0x65, 0x68, 0x61, 0x6c,
+ 0x74, 0x65, 0x6e, 0x2e, 0 },
+ },
+ {
+ // FRENCH
+ { 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x65, 0x73, 0x74,
+ 0x20, 0x75, 0x6e, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x71, 0x75, 0x65, 0 },
+ { 0x64, 0x65, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e,
+ 0x20, 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0 },
+ { 0x65, 0x73, 0x74, 0x20, 0x75, 0x6e, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x71, 0x75, 0x65, 0x20, 0x65, 0x74, 0x20, 0x75, 0x6e,
+ 0x20, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x64, 0x65, 0 },
+ { 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x65, 0x74, 0x20, 0x65, 0x73, 0x74, 0x20, 0x75,
+ 0x74, 0x69, 0x6c, 0x69, 0x73, 0x82, 0x20, 0x61, 0x76, 0x65, 0x63, 0 },
+ { 0x73, 0x61, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
+ { 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x64, 0x65, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d,
+ 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
+ { 0x20, 0 },
+ { 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x44, 0x75, 0x20, 0x4a, 0x65, 0x75, 0 },
+ { 0x63, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69,
+ 0x63, 0x73, 0x2e, 0 },
+ { 0x54, 0x6f, 0x75, 0x73, 0x20, 0x44, 0x72, 0x6f, 0x69, 0x64, 0x73, 0x20, 0x52, 0x82, 0x73, 0x65, 0x72, 0x76, 0x82, 0x73,
+ 0x2e, 0 },
+ { 0 },
+ }
};
const char menuItems[3][40] = {
@@ -1630,7 +1676,20 @@ void DragonsEngine::mainMenu() {
"Options",
"Previews"
};
-
+
+ if(_language == Common::DE_DEU){
+ lang_index = 1;
+ y_offset = 0x0e;
+ }
+ else if (_language == Common::FR_FRA){
+ lang_index = 2;
+ y_offset = 0x0e;
+ }
+ else {
+ lang_index = 0;
+ y_offset = 0x12;
+ }
+
_screen->clearScreen();
Actor *actor = _actorManager->loadActor(0xd9,0,0,0,3);
actor->setFlag(ACTOR_FLAG_8000);
@@ -1640,8 +1699,8 @@ void DragonsEngine::mainMenu() {
//TODO fix palette for copyright image.
_screen->loadPalette(0, _cursor->getPalette()); //actor->_actorResource->getPalette());
- for (int i = 0; i < 6; i++) {
- _fontManager->addText(centerText(copyright[i]) * 8, (0x12 + i) * 8, copyright[i], wideStrLen(copyright[i]), 1);
+ for (int i = 0; (i < 11) && (copyright[lang_index][0][0]!=0); i++) {
+ _fontManager->addText(centerText(copyright[lang_index][i]) * 8, (y_offset + i) * 8, copyright[lang_index][i], wideStrLen(copyright[lang_index][i]), 1);
}
waitForFramesAllowSkip(400);
Commit: e096f5ef3940c34e8e64fb98db18b2bcc675987f
https://github.com/scummvm/scummvm/commit/e096f5ef3940c34e8e64fb98db18b2bcc675987f
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00
Commit Message:
DRAGONS: Add GRB copyright text
Changed paths:
engines/dragons/dragons.cpp
diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index 662cf88240e..a267ffef9d3 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1612,9 +1612,8 @@ void DragonsEngine::mainMenu() {
_inMenu = true;
int lang_index, y_offset;
-
- uint16 copyright[3][11][40] = {
- { // ENGLISH
+ uint16 copyright[4][11][40] = {
+ { // US
{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
{ 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
@@ -1628,7 +1627,26 @@ void DragonsEngine::mainMenu() {
0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
{ 0 },
},
- { // GERMAN
+ { // UK
+ { 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
+ 0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
+ { 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e,
+ 0x20, 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0 },
+ { 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x27, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x73, 0x20,
+ 0x61, 0x72, 0x65, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0 },
+ { 0x61, 0x6e, 0x64, 0x20, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65,
+ 0x72, 0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0 },
+ { 0x61, 0x72, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
+ { 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,
+ 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
+ { 0 },
+ { 0x47, 0x61, 0x6d, 0x65, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x43, 0x29, 0x20, 0x43,
+ 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
+ { 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0 },
+ { 0 },
+ },
+ { // GERMANY
{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x74,
0x20, 0x65, 0x69, 0x6e, 0x20, 0x57, 0x61, 0x72, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0 },
{ 0x76, 0x6f, 0x6e, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0 },
@@ -1641,7 +1659,7 @@ void DragonsEngine::mainMenu() {
{ 0x4c, 0x69, 0x7a, 0x65, 0x6e, 0x7a, 0x69, 0x65, 0x72, 0x74, 0x20, 0x64, 0x75, 0x72, 0x63, 0x68, 0 },
{ 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e,
0x63, 0x2e, 0 },
- { 0x20, 0 },
+ { 0 },
{ 0x53, 0x70, 0x69, 0x65, 0x6c, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0 },
{ 0x63, 0x20, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d,
0x69, 0x63, 0x73, 0x2e, 0 },
@@ -1649,7 +1667,7 @@ void DragonsEngine::mainMenu() {
0x74, 0x65, 0x6e, 0x2e, 0 },
},
{
- // FRENCH
+ // FRANCE
{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x65, 0x73, 0x74,
0x20, 0x75, 0x6e, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x71, 0x75, 0x65, 0 },
{ 0x64, 0x65, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e,
@@ -1661,7 +1679,7 @@ void DragonsEngine::mainMenu() {
{ 0x73, 0x61, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x64, 0x65, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d,
0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
- { 0x20, 0 },
+ { 0 },
{ 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x44, 0x75, 0x20, 0x4a, 0x65, 0x75, 0 },
{ 0x63, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69,
0x63, 0x73, 0x2e, 0 },
@@ -1677,14 +1695,18 @@ void DragonsEngine::mainMenu() {
"Previews"
};
- if(_language == Common::DE_DEU){
+ if (_language == Common::EN_GRB) {
lang_index = 1;
y_offset = 0x0e;
}
- else if (_language == Common::FR_FRA){
+ else if (_language == Common::DE_DEU) {
lang_index = 2;
y_offset = 0x0e;
}
+ else if (_language == Common::FR_FRA) {
+ lang_index = 3;
+ y_offset = 0x0e;
+ }
else {
lang_index = 0;
y_offset = 0x12;
Commit: fc4fdd4de185f9d5aa38ace6739b055c3b8b5b5e
https://github.com/scummvm/scummvm/commit/fc4fdd4de185f9d5aa38ace6739b055c3b8b5b5e
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00
Commit Message:
DRAGONS: Hide "previews" menuitem on non-US releases
Changed paths:
engines/dragons/dragons.cpp
diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index a267ffef9d3..3e8681da9d1 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1612,6 +1612,9 @@ void DragonsEngine::mainMenu() {
_inMenu = true;
int lang_index, y_offset;
+
+ int lastMenuItem = 1;
+
uint16 copyright[4][11][40] = {
{ // US
{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
@@ -1710,6 +1713,7 @@ void DragonsEngine::mainMenu() {
else {
lang_index = 0;
y_offset = 0x12;
+ lastMenuItem = 2;
}
_screen->clearScreen();
@@ -1733,12 +1737,12 @@ void DragonsEngine::mainMenu() {
do {
uint16 curMenuItem = 0;
do {
- for (int i = 0; i < 3; i++) {
+ for (int i = 0; i <= lastMenuItem; i++) {
_fontManager->addAsciiText((i == 0 ? 17 : 16) * 8, (0x12 + i) * 8, &menuItems[i][0],
strlen(menuItems[i]), i == curMenuItem ? 0 : 1);
}
if (checkForDownKeyRelease() || checkForWheelDown()) {
- if (curMenuItem < 2) {
+ if (curMenuItem < lastMenuItem) {
curMenuItem++;
} else {
curMenuItem = 0;
@@ -1750,7 +1754,7 @@ void DragonsEngine::mainMenu() {
if (curMenuItem > 0) {
curMenuItem--;
} else {
- curMenuItem = 2;
+ curMenuItem = lastMenuItem;
}
playOrStopSound(0x8009);
}
Commit: 125468533e5af0bf2ffb437daeba5afd6c4add6a
https://github.com/scummvm/scummvm/commit/125468533e5af0bf2ffb437daeba5afd6c4add6a
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00
Commit Message:
DRAGONS: Fix copyright blank lines to match original
Changed paths:
engines/dragons/dragons.cpp
diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index 3e8681da9d1..5144e2405bc 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1643,7 +1643,7 @@ void DragonsEngine::mainMenu() {
0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,
0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
- { 0 },
+ { 0x20 },
{ 0x47, 0x61, 0x6d, 0x65, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x43, 0x29, 0x20, 0x43,
0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
{ 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0 },
@@ -1662,7 +1662,7 @@ void DragonsEngine::mainMenu() {
{ 0x4c, 0x69, 0x7a, 0x65, 0x6e, 0x7a, 0x69, 0x65, 0x72, 0x74, 0x20, 0x64, 0x75, 0x72, 0x63, 0x68, 0 },
{ 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e,
0x63, 0x2e, 0 },
- { 0 },
+ { 0x20 },
{ 0x53, 0x70, 0x69, 0x65, 0x6c, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0 },
{ 0x63, 0x20, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d,
0x69, 0x63, 0x73, 0x2e, 0 },
@@ -1682,7 +1682,7 @@ void DragonsEngine::mainMenu() {
{ 0x73, 0x61, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x64, 0x65, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d,
0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
- { 0 },
+ { 0x20 },
{ 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x44, 0x75, 0x20, 0x4a, 0x65, 0x75, 0 },
{ 0x63, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69,
0x63, 0x73, 0x2e, 0 },
@@ -1725,7 +1725,7 @@ void DragonsEngine::mainMenu() {
//TODO fix palette for copyright image.
_screen->loadPalette(0, _cursor->getPalette()); //actor->_actorResource->getPalette());
- for (int i = 0; (i < 11) && (copyright[lang_index][0][0]!=0); i++) {
+ for (int i = 0; (i < 11) && (copyright[lang_index][i][0]!=0); i++) {
_fontManager->addText(centerText(copyright[lang_index][i]) * 8, (y_offset + i) * 8, copyright[lang_index][i], wideStrLen(copyright[lang_index][i]), 1);
}
Commit: 4c59e2c23afa9cddb0c64fb7e4b799f256626154
https://github.com/scummvm/scummvm/commit/4c59e2c23afa9cddb0c64fb7e4b799f256626154
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00
Commit Message:
DRAGONS: Add localized main menu
Changed paths:
engines/dragons/dragons.cpp
diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index 5144e2405bc..55078da34f3 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1692,10 +1692,29 @@ void DragonsEngine::mainMenu() {
}
};
- const char menuItems[3][40] = {
- "Start",
- "Options",
- "Previews"
+ uint16 menuItems[4][3][40] = {
+ {
+ // US
+ { 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
+ { 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
+ { 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x73, 0 },
+
+ },
+ {
+ // UK
+ { 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
+ { 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
+ },
+ {
+ // GERMANY
+ { 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
+ { 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x6e, 0 },
+ },
+ {
+ // FRANCE
+ { 0x44, 0x82, 0x6d, 0x61, 0x72, 0x72, 0x65, 0x72, 0 },
+ { 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
+ }
};
if (_language == Common::EN_GRB) {
@@ -1738,8 +1757,8 @@ void DragonsEngine::mainMenu() {
uint16 curMenuItem = 0;
do {
for (int i = 0; i <= lastMenuItem; i++) {
- _fontManager->addAsciiText((i == 0 ? 17 : 16) * 8, (0x12 + i) * 8, &menuItems[i][0],
- strlen(menuItems[i]), i == curMenuItem ? 0 : 1);
+ _fontManager->addText((i == 0 ? 17 : 16) * 8, (0x12 + i) * 8, menuItems[lang_index][i], wideStrLen(menuItems[lang_index][i]),
+ i == curMenuItem ? 0 : 1);
}
if (checkForDownKeyRelease() || checkForWheelDown()) {
if (curMenuItem < lastMenuItem) {
Commit: aae59da8e83984c0db5b627b38aff1938e20cf61
https://github.com/scummvm/scummvm/commit/aae59da8e83984c0db5b627b38aff1938e20cf61
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00
Commit Message:
DRAGONS: Fix alignment of French main menu
Changed paths:
engines/dragons/dragons.cpp
diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index 55078da34f3..9a6dc4537a4 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1757,7 +1757,7 @@ void DragonsEngine::mainMenu() {
uint16 curMenuItem = 0;
do {
for (int i = 0; i <= lastMenuItem; i++) {
- _fontManager->addText((i == 0 ? 17 : 16) * 8, (0x12 + i) * 8, menuItems[lang_index][i], wideStrLen(menuItems[lang_index][i]),
+ _fontManager->addText( ((i == 0) && (lang_index != 3) ? 17 : 16) * 8, (0x12 + i) * 8, menuItems[lang_index][i], wideStrLen(menuItems[lang_index][i]),
i == curMenuItem ? 0 : 1);
}
if (checkForDownKeyRelease() || checkForWheelDown()) {
Commit: c07bbf1a5a0fa51badf4f9fc93dcbbcd95107d99
https://github.com/scummvm/scummvm/commit/c07bbf1a5a0fa51badf4f9fc93dcbbcd95107d99
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00
Commit Message:
DRAGONS: Add blank line to GBR copyright
Changed paths:
engines/dragons/dragons.cpp
diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index 9a6dc4537a4..fc251ba6593 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1719,7 +1719,7 @@ void DragonsEngine::mainMenu() {
if (_language == Common::EN_GRB) {
lang_index = 1;
- y_offset = 0x0e;
+ y_offset = 0x0f;
}
else if (_language == Common::DE_DEU) {
lang_index = 2;
Commit: c6e2cfb6e6ca766a60345120824b51faae7f1c19
https://github.com/scummvm/scummvm/commit/c6e2cfb6e6ca766a60345120824b51faae7f1c19
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00
Commit Message:
DRAGONS: Convert uint texts to standard char
Also update AddAsciiText method to support special characters
Changed paths:
engines/dragons/dragons.cpp
engines/dragons/font.cpp
diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index fc251ba6593..bbe63265e4e 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1596,16 +1596,8 @@ void DragonsEngine::initSubtitleFlag() {
}
}
-uint32 wideStrLen(uint16 *text) {
- int i = 0;
- while (text[i] != 0) {
- i++;
- }
- return i;
-}
-
-int centerText(uint16 *text) {
- return 0x14 - (wideStrLen(text) / 2 + 1);
+int centerText(const char *text) {
+ return 0x14 - (strlen(text) / 2 + 1);
}
void DragonsEngine::mainMenu() {
@@ -1615,106 +1607,78 @@ void DragonsEngine::mainMenu() {
int lastMenuItem = 1;
- uint16 copyright[4][11][40] = {
- { // US
- { 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
- 0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
- { 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
- { 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61,
- 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0 },
- { 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a,
- 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x73, 0 },
- { 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
- 0x2e, 0 },
- { 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,
- 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
- { 0 },
+ const char copyright[4][11][40] = {
+ {
+ // US
+ "Crystal Dynamics is a trademark",
+ "of Crystal Dynamics.",
+ "Blazing Dragons is a trademark and",
+ "copyright of Terry Jones and is",
+ "used with permission.",
+ "Licensed by Nelvana Marketing Inc."
},
- { // UK
- { 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
- 0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
- { 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e,
- 0x20, 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0 },
- { 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x27, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x73, 0x20,
- 0x61, 0x72, 0x65, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0 },
- { 0x61, 0x6e, 0x64, 0x20, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65,
- 0x72, 0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0 },
- { 0x61, 0x72, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73,
- 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
- { 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,
- 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
- { 0x20 },
- { 0x47, 0x61, 0x6d, 0x65, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x43, 0x29, 0x20, 0x43,
- 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
- { 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0 },
- { 0 },
+ {
+ // UK
+ "Crystal Dynamics is a trademark",
+ "of Crystal Dynamics. Blazing",
+ "Dragons' characters are trademarks",
+ "and copyrights of Terry Jones and",
+ "are used with permission.",
+ "Licensed by Nelvana Marketing Inc.",
+ " ",
+ "Game Copyright (C) Crystal Dynamics.",
+ "All rights reserved.",
},
- { // GERMANY
- { 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x74,
- 0x20, 0x65, 0x69, 0x6e, 0x20, 0x57, 0x61, 0x72, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0 },
- { 0x76, 0x6f, 0x6e, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0 },
- { 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x74, 0x20,
- 0x65, 0x69, 0x6e, 0x20, 0x67, 0x65, 0x73, 0x63, 0x68, 0x81, 0x74, 0x7a, 0x74, 0x65, 0x73, 0 },
- { 0x57, 0x61, 0x72, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0x20, 0x76, 0x6f, 0x6e, 0x20, 0x54, 0x65, 0x72,
- 0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0 },
- { 0x75, 0x6e, 0x64, 0x20, 0x77, 0x69, 0x72, 0x64, 0x20, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x4c, 0x69, 0x7a, 0x65, 0x6e,
- 0x7a, 0x20, 0x76, 0x65, 0x72, 0x77, 0x65, 0x6e, 0x64, 0x65, 0x74, 0x2e, 0 },
- { 0x4c, 0x69, 0x7a, 0x65, 0x6e, 0x7a, 0x69, 0x65, 0x72, 0x74, 0x20, 0x64, 0x75, 0x72, 0x63, 0x68, 0 },
- { 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e,
- 0x63, 0x2e, 0 },
- { 0x20 },
- { 0x53, 0x70, 0x69, 0x65, 0x6c, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0 },
- { 0x63, 0x20, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d,
- 0x69, 0x63, 0x73, 0x2e, 0 },
- { 0x41, 0x6c, 0x6c, 0x65, 0x20, 0x52, 0x65, 0x63, 0x68, 0x74, 0x65, 0x20, 0x56, 0x6f, 0x72, 0x62, 0x65, 0x68, 0x61, 0x6c,
- 0x74, 0x65, 0x6e, 0x2e, 0 },
+ {
+ // GERMANY
+ "Crystal Dynamics ist ein Warenzeichen",
+ "von Crystal Dynamics",
+ "Blazing Dragons ist ein gesch\x81tztes",
+ "Warenzeichen von Terry Jones",
+ "und wird unter Lizenz verwendet.",
+ "Lizenziert durch",
+ "Nelvana Marketing Inc.",
+ " ",
+ "Spiel Copyright",
+ "c 1996 Crystal Dynamics.",
+ "Alle Rechte Vorbehalten.",
},
{
// FRANCE
- { 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x65, 0x73, 0x74,
- 0x20, 0x75, 0x6e, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x71, 0x75, 0x65, 0 },
- { 0x64, 0x65, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e,
- 0x20, 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0 },
- { 0x65, 0x73, 0x74, 0x20, 0x75, 0x6e, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x71, 0x75, 0x65, 0x20, 0x65, 0x74, 0x20, 0x75, 0x6e,
- 0x20, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x64, 0x65, 0 },
- { 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x65, 0x74, 0x20, 0x65, 0x73, 0x74, 0x20, 0x75,
- 0x74, 0x69, 0x6c, 0x69, 0x73, 0x82, 0x20, 0x61, 0x76, 0x65, 0x63, 0 },
- { 0x73, 0x61, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
- { 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x64, 0x65, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d,
- 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
- { 0x20 },
- { 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x44, 0x75, 0x20, 0x4a, 0x65, 0x75, 0 },
- { 0x63, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69,
- 0x63, 0x73, 0x2e, 0 },
- { 0x54, 0x6f, 0x75, 0x73, 0x20, 0x44, 0x72, 0x6f, 0x69, 0x64, 0x73, 0x20, 0x52, 0x82, 0x73, 0x65, 0x72, 0x76, 0x82, 0x73,
- 0x2e, 0 },
- { 0 },
- }
+ "Crystal Dynamics est une marque",
+ "de Crystal Dynamics. Blazing Dragons",
+ "est une marque et un copyright de",
+ "Terry Jones et est utilis\x82 avec",
+ "sa permission.",
+ "Licence de Nelvana Marketing Inc.",
+ " ",
+ "Copyright Du Jeu",
+ "c1996 Crystal Dynamics.",
+ "Tous Droids R\x82serv\x82s."
+ },
};
- uint16 menuItems[4][3][40] = {
+ const char menuItems[4][3][40] = {
{
// US
- { 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
- { 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
- { 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x73, 0 },
-
+ "Start",
+ "Options",
+ "Previews",
},
{
// UK
- { 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
- { 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
+ "Start",
+ "Options",
},
- {
- // GERMANY
- { 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
- { 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x6e, 0 },
+ { // GERMANY
+ "Start",
+ "Optionen",
},
{
// FRANCE
- { 0x44, 0x82, 0x6d, 0x61, 0x72, 0x72, 0x65, 0x72, 0 },
- { 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
- }
+ "D\x82marrer",
+ "Options",
+ },
};
if (_language == Common::EN_GRB) {
@@ -1744,8 +1708,8 @@ void DragonsEngine::mainMenu() {
//TODO fix palette for copyright image.
_screen->loadPalette(0, _cursor->getPalette()); //actor->_actorResource->getPalette());
- for (int i = 0; (i < 11) && (copyright[lang_index][i][0]!=0); i++) {
- _fontManager->addText(centerText(copyright[lang_index][i]) * 8, (y_offset + i) * 8, copyright[lang_index][i], wideStrLen(copyright[lang_index][i]), 1);
+ for (int i = 0; (i < 11) && (copyright[lang_index][i][0] != 0); i++) {
+ _fontManager->addAsciiText(centerText(©right[lang_index][i][0]) * 8, (y_offset + i) * 8, ©right[lang_index][i][0], strlen(copyright[lang_index][i]), 1);
}
waitForFramesAllowSkip(400);
@@ -1757,8 +1721,8 @@ void DragonsEngine::mainMenu() {
uint16 curMenuItem = 0;
do {
for (int i = 0; i <= lastMenuItem; i++) {
- _fontManager->addText( ((i == 0) && (lang_index != 3) ? 17 : 16) * 8, (0x12 + i) * 8, menuItems[lang_index][i], wideStrLen(menuItems[lang_index][i]),
- i == curMenuItem ? 0 : 1);
+ _fontManager->addAsciiText(((i == 0) && (lang_index != 3) ? 17 : 16) * 8, (0x12 + i) * 8, &menuItems[lang_index][i][0], strlen(menuItems[lang_index][i]),
+ i == curMenuItem ? 0 : 1);
}
if (checkForDownKeyRelease() || checkForWheelDown()) {
if (curMenuItem < lastMenuItem) {
diff --git a/engines/dragons/font.cpp b/engines/dragons/font.cpp
index 9069720963c..8efc03b2cf7 100644
--- a/engines/dragons/font.cpp
+++ b/engines/dragons/font.cpp
@@ -261,7 +261,7 @@ void FontManager::addAsciiText(int16 x, int16 y, const char *text, uint16 length
}
for (int i = 0; i < length; i++) {
- wText[i] = text[i];
+ wText[i] = text[i] & 0xFFU;
}
addText(x, y, wText, length, fontType);
More information about the Scummvm-git-logs
mailing list