aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--devtools/create_supernova/gametext.h14
-rw-r--r--engines/supernova/msn_def.h4
-rw-r--r--engines/supernova/rooms.cpp17
3 files changed, 26 insertions, 9 deletions
diff --git a/devtools/create_supernova/gametext.h b/devtools/create_supernova/gametext.h
index 25542ffedd..a3ec589e27 100644
--- a/devtools/create_supernova/gametext.h
+++ b/devtools/create_supernova/gametext.h
@@ -682,8 +682,20 @@ const char *gameText[] = {
"Hallo!", // kStringDialogX1
"Guten Tag!", // kStringDialogX2
"Ich bin's, Horst Hummel.", // kStringDialogX3
- "",
+ "Sie schon wieder?", // kStringAxacussCorridor5_1
// 540
+ "Halt! Sie sind doch dieser Hummel.|Bleiben Sie sofort stehen!", // kStringAxacussCorridor5_2
+ "Sehr witzig!", // kStringAxacussCorridor5_3
+ "Kann auch sein, auf jeden Fall|sind Sie der Nicht-Axacussaner.", // kStringAxacussCorridor5_4
+ "Nein!", // kStringAxacussCorridor5_5
+ "Das m\201\341te schon ein bi\341chen mehr sein.", // kStringAxacussCorridor5_6
+ // 545
+ "Ok, dann machen Sie da\341 Sie wegkommen!", kStringAxacussCorridor5_7
+ "",
+ "",
+ "",
+ "",
+ // 550
NULL
};
diff --git a/engines/supernova/msn_def.h b/engines/supernova/msn_def.h
index 565c1b69ef..3a8b920b5c 100644
--- a/engines/supernova/msn_def.h
+++ b/engines/supernova/msn_def.h
@@ -527,7 +527,9 @@ enum StringID {
// 525
kStringDialogArsanoMeetup2_8, kStringDialogArsanoMeetup2_9, kStringDialogArsanoMeetup2_10, kStringDialogArsanoMeetup2_11, kStringDialogAxacussCorridor5_1,
kStringDialogAxacussCorridor5_2, kStringDialogAxacussCorridor5_3, kStringDialogAxacussCorridor5_4, kStringDialogAxacussCorridor5_5, kStringDialogAxacussCorridor5_6,
- kStringDialogAxacussCorridor5_7, kStringDialogX1, kStringDialogX2, kStringDialogX3
+ kStringDialogAxacussCorridor5_7, kStringDialogX1, kStringDialogX2, kStringDialogX3, kStringAxacussCorridor5_1,
+ kStringAxacussCorridor5_2, kStringAxacussCorridor5_3, kStringAxacussCorridor5_4, kStringAxacussCorridor5_5, kStringAxacussCorridor5_6,
+ kStringAxacussCorridor5_7
};
static StringID guiCommands[] = {
diff --git a/engines/supernova/rooms.cpp b/engines/supernova/rooms.cpp
index 8a3b937314..9410be533c 100644
--- a/engines/supernova/rooms.cpp
+++ b/engines/supernova/rooms.cpp
@@ -2590,18 +2590,18 @@ bool AxacussCorridor5::interact(Action verb, Object &obj1, Object &obj2) {
_vm->renderImage(41, 0);
_vm->paletteBrightness();
if (_gm->_guiEnabled) {
- _gm->reply("Sie schon wieder?", 1, 1 + 128);
+ _gm->reply(kStringAxacussCorridor5_1, 1, 1 + 128);
goto bestechen;
} else {
_gm->_guiEnabled = true;
- _gm->reply("Halt! Sie sind doch dieser Hummel.|Bleiben Sie sofort stehen!", 1, 1 + 128);
+ _gm->reply(kStringAxacussCorridor5_2, 1, 1 + 128);
if (_gm->dialog(2, rows, _dialog1, 0))
- _gm->reply("Sehr witzig!", 1, 1 + 128);
+ _gm->reply(kStringAxacussCorridor5_3, 1, 1 + 128);
else {
- _gm->reply("Kann auch sein, auf jeden Fall|sind Sie der Nicht-Axacussaner.", 1, 1 + 128);
+ _gm->reply(kStringAxacussCorridor5_4, 1, 1 + 128);
bestechen:
if (_gm->dialog(2, rows, _dialog2, 0) == 0) {
- _gm->reply("Nein!", 1, 1 + 128);
+ _gm->reply(kStringAxacussCorridor5_5, 1, 1 + 128);
setSectionVisible(kMaxSection - 2, false);
if (_gm->_state._money == 0) {
_gm->removeSentence(2, 2);
@@ -2610,6 +2610,9 @@ bestechen:
// TODO: Handle string manipulation in dialogs
// _dialog3[2] and _dialog3[3] are both using kStringDialogAxacussCorridor5_7
// ("Wenn Sie mich durchlassen gebe ich Ihnen %d Xa.")
+ // One way could be to keep an array of string[6], replace the %d of the previous sentence by a %s,
+ // and format the dialog string when the associated parameter string isn't empty.
+ // The following code is broken and only kept in order to remember the values used.
// _dialog3[2] += Common::String::format(kStringDialogAxacussCorridor5_7, _gm->_state._money - 200);
// _dialog3[3] += Common::String::format(kStringDialogAxacussCorridor5_7, _gm->_state._money);
}
@@ -2634,7 +2637,7 @@ bestechen:
sum = _gm->_state._money - 200;
goto genug;
}
- _gm->reply("Das m\201\341te schon ein bi\341chen mehr sein.", 1, 1 + 128);
+ _gm->reply(kStringAxacussCorridor5_6, 1, 1 + 128);
}
}
}
@@ -2643,7 +2646,7 @@ bestechen:
return true;
genug:
- _gm->reply("Ok, dann machen Sie da\341 Sie wegkommen!", 1, 1 + 128);
+ _gm->reply(kStringAxacussCorridor5_7, 1, 1 + 128);
_gm->great(0);
_gm->changeRoom(ELEVATOR);
_gm->_newRoom = true;