diff options
author | Strangerke | 2017-10-17 04:34:26 +0200 |
---|---|---|
committer | Thierry Crozat | 2018-01-23 02:15:35 +0000 |
commit | ed9d92407ec496922245b06c9b0372dc6e466f36 (patch) | |
tree | d56285c410c3517e9c93736e5601edcc6538b8a2 | |
parent | 38fbda91895ae41c1d45a0d0a25b0d1c21def21f (diff) | |
download | scummvm-rg350-ed9d92407ec496922245b06c9b0372dc6e466f36.tar.gz scummvm-rg350-ed9d92407ec496922245b06c9b0372dc6e466f36.tar.bz2 scummvm-rg350-ed9d92407ec496922245b06c9b0372dc6e466f36.zip |
SUPERNOVA: Extract more dialog texts
-rw-r--r-- | devtools/create_supernova/gametext.h | 144 | ||||
-rw-r--r-- | engines/supernova/msn_def.h | 13 | ||||
-rw-r--r-- | engines/supernova/rooms.cpp | 73 | ||||
-rw-r--r-- | engines/supernova/rooms.h | 56 | ||||
-rw-r--r-- | engines/supernova/state.cpp | 4 | ||||
-rw-r--r-- | engines/supernova/state.h | 1 |
6 files changed, 181 insertions, 110 deletions
diff --git a/devtools/create_supernova/gametext.h b/devtools/create_supernova/gametext.h index 5c5ecc08ad..f385c76dc9 100644 --- a/devtools/create_supernova/gametext.h +++ b/devtools/create_supernova/gametext.h @@ -444,60 +444,114 @@ const char *gameText[] = { "Beim Aufprall des Raumschiffs|mu\341t du mit dem Kopf aufgeschlagen|und bewu\341tlos geworden sein.", // kStringShipSleepCabin15 "Was steht dir jetzt wohl wirklich bevor?", // kStringShipSleepCabin16 // 340 - "Geschwindigkeit: ", - "8000 hpm", - "0 hpm", - "Ziel: Arsano 3", - "Entfernung: ", + "Geschwindigkeit: ", // kStringShipCockpit1 + "8000 hpm", // kStringShipCockpit2 + "0 hpm", // kStringShipCockpit3 + "Ziel: Arsano 3", // kStringShipCockpit4 + "Entfernung: ", // kStringShipCockpit5 //345 - " Lichtjahre", - "Dauer der Reise bei momentaner Geschwindigkeit:", - " Tage", - "Vergi\341 nicht, du bist nur der|Schiffskoch und hast keine Ahnung,|wie man ein Raumschiff fliegt.", - "Achtung: Triebwerke funktionsunf\204hig", + " Lichtjahre", // kStringShipCockpit6 + "Dauer der Reise bei momentaner Geschwindigkeit:", // kStringShipCockpit7 + " Tage", // kStringShipCockpit8 + "Vergi\341 nicht, du bist nur der|Schiffskoch und hast keine Ahnung,|wie man ein Raumschiff fliegt.", // kStringShipCockpit9 + "Achtung: Triebwerke funktionsunf\204hig", // kStringShipCockpit10 //350 - "Energievorrat ersch\224pft", - "Notstromversorgung aktiv", - "Was?! Keiner im Cockpit!|Die sind wohl verr\201ckt!", - "Du hast die Platte schon aufgelegt.", - "Es ist doch gar keine Platte aufgelegt.", + "Energievorrat ersch\224pft", // kStringShipCockpit11 + "Notstromversorgung aktiv", // kStringShipCockpit12 + "Was?! Keiner im Cockpit!|Die sind wohl verr\201ckt!", // kStringShipCockpit13 + "Du hast die Platte schon aufgelegt.", // kStringShipCabinL3_1 + "Es ist doch gar keine Platte aufgelegt.", // kStringShipCabinL3_2 //355 - "Die Platte scheint einen Sprung zu haben.", - "Schneid doch besser ein|l\204ngeres St\201ck Kabel ab!", - "Das ist befestigt.", - "Zu niedriger Luftdruck soll ungesund sein.", - "Er zeigt Null an.", + "Die Platte scheint einen Sprung zu haben.", // kStringShipCabinL3_3 + "Schneid doch besser ein|l\204ngeres St\201ck Kabel ab!", // kStringShipCabinL3_4 + "Das ist befestigt.", // kStringShipCabinL3_5 + "Zu niedriger Luftdruck soll ungesund sein.", // kStringShipAirlock1 + "Er zeigt Null an.", // kStringShipAirlock2 //360 - "Er zeigt Normaldruck an.", - "Komisch, es ist nur|noch ein Raumanzug da.", - "Du mu\341t erst hingehen.", - "Das Kabel ist im Weg.", - "Das Kabel ist schon ganz|richtig an dieser Stelle.", + "Er zeigt Normaldruck an.", // kStringShipAirlock3 + "Komisch, es ist nur|noch ein Raumanzug da.", // kStringShipAirlock4 + "Du mu\341t erst hingehen.", // kStringShipHold1 + "Das Kabel ist im Weg.", // kStringCable1 + "Das Kabel ist schon ganz|richtig an dieser Stelle.", // kStringCable2 //365 - "Womit denn?", - "Die Leitung ist zu kurz.", - "Was ist denn das f\201r ein Chaos?|Und au\341erdem fehlt das Notraumschiff!|Jetzt wird mir einiges klar.|Die anderen sind gefl\201chtet,|und ich habe es verpennt.", - "Es ist nicht spitz genug.", - "Du wirst aus den Anzeigen nicht schlau.", + "Womit denn?", // kStringCable3 + "Die Leitung ist zu kurz.", // kStringCable4 + "Was ist denn das f\201r ein Chaos?|Und au\341erdem fehlt das Notraumschiff!|Jetzt wird mir einiges klar.|Die anderen sind gefl\201chtet,|und ich habe es verpennt.", // kStringShipHold2 + "Es ist nicht spitz genug.", // kStringShipHold3 + "Du wirst aus den Anzeigen nicht schlau.", // kStringShipHold4 //370 - "La\341 lieber die Finger davon!", - "An dem Kabel ist doch gar kein Stecker.", - "Du solltest die Luke vielleicht erst \224ffnen.", - "Das Seil ist im Weg.", - "Das ist geschlossen.", + "La\341 lieber die Finger davon!", // kStringShipHold5 + "An dem Kabel ist doch gar kein Stecker.", // kStringShipHold6 + "Du solltest die Luke vielleicht erst \224ffnen.", // kStringShipHold7 + "Das Seil ist im Weg.", // kStringShipHold8 + "Das ist geschlossen.", // kStringShipHold9 //375 - "Das geht nicht.|Die Luke ist mindestens|5 Meter \201ber dem Boden.", - "Was n\201tzt dir der Anschlu\341|ohne eine Stromquelle?!", - "Die Spannung ist auf Null abgesunken.", - "Es zeigt volle Spannung an.", - "Du mu\341t die Luke erst \224ffnen.", + "Das geht nicht.|Die Luke ist mindestens|5 Meter \201ber dem Boden.", // kStringShipHold10 + "Was n\201tzt dir der Anschlu\341|ohne eine Stromquelle?!", // kStringShipHold11 + "Die Spannung ist auf Null abgesunken.", // kStringShipHold12 + "Es zeigt volle Spannung an.", // kStringShipHold13 + "Du mu\341t die Luke erst \224ffnen.", // kStringShipHold14 //380 - "Das Seil ist hier schon ganz richtig.", - "Das Kabel ist zu kurz.", - "", - "", - "", + "Das Seil ist hier schon ganz richtig.", // kStringShipHold15 + "Das Kabel ist zu kurz.", // kStringShipHold16 + "Die Raumschifft sind alle verschlossen.", // kStringArsanoMeetup1 + "Unsinn!", // kStringArsanoMeetup2 + "Komisch! Auf einmal kannst du|das Schild lesen! Darauf steht:|\"Treffpunkt Galactica\".", // kStringArsanoMeetup3 //385 + "Durch deinen Helm kannst|du nicht sprechen.", // kStringArsanoEntrance1 + "Wo soll ich die Schuhe ablegen?", // kStringArsanoEntrance2 + "Was, das wissen Sie nicht?", // kStringArsanoEntrance3 + "Sie befinden sich im Restaurant|\"Treffpunkt Galactica\".", // kStringArsanoEntrance4 + "Wir sind bei den interessantesten|Ereignissen in der Galaxis|immer zur Stelle.", // kStringArsanoEntrance5 + //390 + "Wenn Sie meinen.", // kStringArsanoEntrance6 + "In der Toilette gibt es|Schlie\341f\204cher f\201r Schuhe.", // kStringArsanoEntrance7 + "Wenn Sie das Lokal betreten|wollen, m\201ssen Sie erst|ihre Schuhe ausziehen.", // kStringArsanoEntrance8 + "Wollen Sie, da\341 ich Sie rau\341schmei\341e?", // kStringArsanoEntrance9 + "Hhius otgfh Dgfdrkjlh Fokj gf.", // kStringArsanoEntrance10 + //395 + "Halt!", // kStringArsanoEntrance11 + "Uhwdejkt!", // kStringArsanoEntrance12 + "Sie m\201ssen erst ihre Schuhe ausziehen, Sie Trottel!", // kStringArsanoEntrance13 + "Was f\204llt ihnen ein!|Sie k\224nnen doch ein Lokal|nicht mit Schuhen betreten!", // kStringArsanoEntrance14 + "Fragen Sie nicht so doof!", // kStringArsanoEntrance15 + // 400 + "Das w\201rde ich an ihrer|Stelle nicht versuchen!", // kStringArsanoEntrance16 + "Du ziehst deine Schuhe|aus und legst sie in|eins der Schlie\341f\204cher.", // kStringArsanoEntrance17 + "Du ziehst deine Schuhe wieder an.", // kStringArsanoEntrance18 + "Du durchsuchst die Klos nach|anderen brauchbaren Sachen,|findest aber nichts.", // kStringArsanoEntrance19 + "Bevor du aufs Klo gehst,|solltest du besser deinen|Raumanzug ausziehen.", // kStringArsanoEntrance20 + // 405 + "Du gehst seit sieben Jahren das|erste Mal wieder aufs Klo!", // kStringArsanoEntrance21 + "In einem der Schlie\341f\204cher,|die sich auch im Raum befinden,|findest du einige M\201nzen.", // kStringArsanoEntrance22 + "Mach doch zuerst das Fach leer!", // kStringArsanoEntrance23 + "Komisch! Auf einmal kannst du|das Schild lesen! Darauf steht:|\"Zutritt nur f\201r Personal\".", // kStringArsanoEntrance24 + "Komisch! Auf einmal kannst|du das Schild lesen!|Darauf steht:\"Toilette\".", // kStringArsanoEntrance25 + // 410 + "Du ziehst den Raumanzug wieder an.", // kStringArsanoEntrance26 + "Nicht so gewaltt\204tig!", // kStringArsanoEntrance27 + "Wo bin ich hier?", // kStringArsanoDialog1 + "Sch\224nes Wetter heute, nicht wahr?", // kStringArsanoDialog2 + "W\201rden Sie mich bitte durchlassen.", // kStringArsanoDialog3 + // 415 + "Hey Alter, la\341 mich durch!", // kStringArsanoDialog4 + "Was haben Sie gesagt?", // kStringArsanoDialog5 + "Sprechen Sie bitte etwas deutlicher!", // kStringArsanoDialog6 + "Wieso das denn nicht?", // kStringArsanoDialog7 + "Wo soll ich die Schuhe ablegen?", // kStringArsanoDialog8 + // 420 + "Schwachsinn! Ich gehe jetzt nach oben!", // kStringArsanoDialog9 + "|", // kStringDialogSeparator + "K\224nnten Sie mir ein Gericht empfehlen?", // kStringDialogArsanoRoger1 + "Wie lange dauert es denn noch bis zur Supernova?", // kStringDialogArsanoRoger2 + "Sie kommen mir irgendwie bekannt vor.", // kStringDialogArsanoRoger3 + // 425 + "Was wollen Sie von mir?", // kStringDialogArsanoMeetup3_1 + "Hilfe!!", // kStringDialogArsanoMeetup3_2 + "Warum sprechen Sie meine Sprache?", // kStringDialogArsanoMeetup3_3 + "Ja, ich bin einverstanden.", // kStringDialogArsanoMeetup3_4 + "Nein, lieber bleibe ich hier, als mit Ihnen zu fliegen.", // kStringDialogArsanoMeetup3_5 + // 430 NULL }; diff --git a/engines/supernova/msn_def.h b/engines/supernova/msn_def.h index ba9eff361b..d30aec1fe9 100644 --- a/engines/supernova/msn_def.h +++ b/engines/supernova/msn_def.h @@ -489,7 +489,18 @@ enum StringID { kStringShipHold5, kStringShipHold6, kStringShipHold7, kStringShipHold8, kStringShipHold9, // 375 kStringShipHold10, kStringShipHold11, kStringShipHold12, kStringShipHold13, kStringShipHold14, - kStringShipHold15, kStringShipHold16 + kStringShipHold15, kStringShipHold16, kStringArsanoMeetup1, kStringArsanoMeetup2, kStringArsanoMeetup3, + kStringArsanoEntrance1, kStringArsanoEntrance2, kStringArsanoEntrance3, kStringArsanoEntrance4, kStringArsanoEntrance5, + kStringArsanoEntrance6, kStringArsanoEntrance7, kStringArsanoEntrance8, kStringArsanoEntrance9, kStringArsanoEntrance10, + kStringArsanoEntrance11, kStringArsanoEntrance12, kStringArsanoEntrance13, kStringArsanoEntrance14, kStringArsanoEntrance15, + // 400 + kStringArsanoEntrance16, kStringArsanoEntrance17, kStringArsanoEntrance18, kStringArsanoEntrance19, kStringArsanoEntrance20, + kStringArsanoEntrance21, kStringArsanoEntrance22, kStringArsanoEntrance23, kStringArsanoEntrance24, kStringArsanoEntrance25, + kStringArsanoEntrance26, kStringArsanoEntrance27, kStringArsanoDialog1, kStringArsanoDialog2, kStringArsanoDialog3, + kStringArsanoDialog4, kStringArsanoDialog5, kStringArsanoDialog6, kStringArsanoDialog7, kStringArsanoDialog8, + kStringArsanoDialog9, kStringDialogSeparator, kStringDialogArsanoRoger1, kStringDialogArsanoRoger2, kStringDialogArsanoRoger3, + // 425 + kStringDialogArsanoMeetup3_1, kStringDialogArsanoMeetup3_2, kStringDialogArsanoMeetup3_3, kStringDialogArsanoMeetup3_4, kStringDialogArsanoMeetup3_5 }; static StringID guiCommands[] = { diff --git a/engines/supernova/rooms.cpp b/engines/supernova/rooms.cpp index 77d6efaa3f..cdcc29592e 100644 --- a/engines/supernova/rooms.cpp +++ b/engines/supernova/rooms.cpp @@ -1489,12 +1489,12 @@ bool ArsanoMeetup::interact(Action verb, Object &obj1, Object &obj2) { if ((verb == ACTION_WALK) && ((obj1._id == SPACESHIPS) || ((obj1._id == SPACESHIP) && !obj1.hasProperty(OPENED)))) { - _vm->renderMessage("Die Raumschifft sind alle verschlossen."); + _vm->renderMessage(kStringArsanoMeetup1); } else if ((verb == ACTION_WALK) && (obj1._id == SPACESHIP)) { _gm->changeRoom(GLIDER); _gm->_newRoom = true; } else if ((verb == ACTION_WALK) && (obj1._id == STAR)) { - _vm->renderMessage("Unsinn!"); + _vm->renderMessage(kStringArsanoMeetup2); } else if ((verb == ACTION_LOOK) && (obj1._id == STAR)) { _vm->renderImage(26, 0); _vm->paletteBrightness(); @@ -1515,7 +1515,7 @@ bool ArsanoMeetup::interact(Action verb, Object &obj1, Object &obj2) { return false; } else if ((verb == ACTION_LOOK) && (obj1._id == MEETUP_SIGN) && _gm->_state._language) { if (_gm->_state._language == 2) - _vm->renderMessage("Komisch! Auf einmal kannst du|das Schild lesen! Darauf steht:|\"Treffpunkt Galactica\"."); + _vm->renderMessage(kStringArsanoMeetup3); obj1._description = kStringSignDescription2; if (_gm->_state._language == 1) @@ -1576,43 +1576,43 @@ bool ArsanoEntrance::interact(Action verb, Object &obj1, Object &obj2) { if ((verb == ACTION_TALK) && (obj1._id == PORTER)) { if (_gm->_rooms[AIRLOCK]->getObject(4)->hasProperty(WORN)) { - _vm->renderMessage("Durch deinen Helm kannst|du nicht sprechen."); + _vm->renderMessage(kStringArsanoEntrance1); } else { if (_gm->_state._language) { do { if (_gm->_state._shoes == 1) { - _dialog2[2] = "Wo soll ich die Schuhe ablegen?"; + _dialog2[2] = kStringArsanoEntrance2; _gm->addSentence(2, 2); } else if (_gm->_state._shoes > 1) { _gm->removeSentence(2, 2); } switch (e = _gm->dialog(5, nullptr, nullptr, 2)) { // row2, dialog2 case 0: - _gm->reply("Was, das wissen Sie nicht?", 1, _gm->invertSection(1)); - _gm->reply("Sie befinden sich im Restaurant|\"Treffpunkt Galactica\".", 1, _gm->invertSection(1)); - _gm->reply("Wir sind bei den interessantesten|Ereignissen in der Galaxis|immer zur Stelle.", 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance3, 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance4, 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance5, 1, _gm->invertSection(1)); _gm->removeSentence(1, 1); break; case 1: - _gm->reply("Wenn Sie meinen.", 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance6, 1, _gm->invertSection(1)); _gm->addSentence(1, 2); break; case 2: if (_gm->_state._shoes == 1) { - _gm->reply("In der Toilette gibt es|Schlie\341f\204cher f\201r Schuhe.", 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance7, 1, _gm->invertSection(1)); _gm->_state._shoes = 2; } else { - _gm->reply("Wenn Sie das Lokal betreten|wollen, m\201ssen Sie erst|ihre Schuhe ausziehen.", 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance8, 1, _gm->invertSection(1)); _gm->_state._shoes = 1; } break; case 3: - _gm->reply("Wollen Sie, da\341 ich Sie rau\341schmei\341e?", 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance9, 1, _gm->invertSection(1)); } } while (e != 4); } else { if (_gm->dialog(5, nullptr, nullptr, 0) != 4) // row2, dialog2 - _gm->reply("Hhius otgfh Dgfdrkjlh Fokj gf.", 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance10, 1, _gm->invertSection(1)); } } } else if ((verb == ACTION_WALK) && (obj1._id == STAIRCASE) && (_gm->_state._shoes != 3)) { @@ -1623,9 +1623,9 @@ bool ArsanoEntrance::interact(Action verb, Object &obj1, Object &obj2) { if (_gm->_rooms[AIRLOCK]->getObject(4)->hasProperty(WORN)) _gm->reply("|", 1, _gm->invertSection(1)); else if (_gm->_state._language) - _gm->reply("Halt!", 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance11, 1, _gm->invertSection(1)); else - _gm->reply("Uhwdejkt!", 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance12, 1, _gm->invertSection(1)); _gm->drawImage(3); setSectionVisible(4, false); _gm->wait2(2); @@ -1633,23 +1633,23 @@ bool ArsanoEntrance::interact(Action verb, Object &obj1, Object &obj2) { if (!_gm->_rooms[AIRLOCK]->getObject(4)->hasProperty(WORN)) { if (_gm->_state._language) { if (_gm->_state._shoes) - _gm->reply("Sie m\201ssen erst ihre Schuhe ausziehen, Sie Trottel!", 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance13, 1, _gm->invertSection(1)); else - _gm->reply("Was f\204llt ihnen ein!|Sie k\224nnen doch ein Lokal|nicht mit Schuhen betreten!", 1, _gm->invertSection(1)); + _gm->reply(kStringArsanoEntrance14, 1, _gm->invertSection(1)); e = 0; while ((e < 3) && (_shown[kMaxSection - 1] != 15)) { switch (e = _gm->dialog(5, nullptr, nullptr, 1)) { // row1, dialog1 case 0: - _gm->reply("Fragen Sie nicht so doof!", 1, 1 + 128); + _gm->reply(kStringArsanoEntrance15, 1, 1 + 128); break; case 1: - _gm->reply("Was, das wissen Sie nicht?", 1, 1 + 128); - _gm->reply("Sie befinden sich im Restaurant|\"Treffpunkt Galactica\".", 1, 1 + 128); - _gm->reply("Wir sind bei den interessantesten|Ereignissen in der Galaxis|immer zur Stelle.", 1, 1 + 128); + _gm->reply(kStringArsanoEntrance3, 1, 1 + 128); + _gm->reply(kStringArsanoEntrance4, 1, 1 + 128); + _gm->reply(kStringArsanoEntrance5, 1, 1 + 128); _gm->removeSentence(0, 2); break; case 2: - _gm->reply("In der Toilette gibt es|Schlie\341f\204cher f\201r Schuhe.", 1, 1 + 128); + _gm->reply(kStringArsanoEntrance7, 1, 1 + 128); _gm->_state._shoes = 2; break; case 3: @@ -1657,7 +1657,7 @@ bool ArsanoEntrance::interact(Action verb, Object &obj1, Object &obj2) { _gm->wait2(2); _gm->drawImage(4); setSectionVisible(3, false); - _gm->reply("Das w\201rde ich an ihrer|Stelle nicht versuchen!", 1, 1 + 128); + _gm->reply(kStringArsanoEntrance16, 1, 1 + 128); _gm->drawImage(3); setSectionVisible(4, false); _gm->wait2(2); @@ -1668,7 +1668,7 @@ bool ArsanoEntrance::interact(Action verb, Object &obj1, Object &obj2) { } } else { _gm->dialog(2, nullptr, nullptr, 0); // row3, dialog3 - _gm->reply("Hhius otgfh Dgfdrkjlh Fokj gf.", 1, 1 + 128); + _gm->reply(kStringArsanoEntrance10, 1, 1 + 128); } } } else if ((verb == ACTION_PRESS) && (obj1._id == BATHROOM_BUTTON)) { @@ -1690,23 +1690,23 @@ bool ArsanoEntrance::interact(Action verb, Object &obj1, Object &obj2) { } else if ((verb == ACTION_WALK) && (obj1._id == ARSANO_BATHROOM)) { if (_gm->_state._coins) { if (_gm->_state._shoes == 2) { - _vm->renderMessage("Du ziehst deine Schuhe|aus und legst sie in|eins der Schlie\341f\204cher."); + _vm->renderMessage(kStringArsanoEntrance17); _gm->_state._shoes = 3; _gm->removeSentence(2, 2); _gm->removeSentence(3, 2); } else if (_gm->_state._shoes == 3) { - _vm->renderMessage("Du ziehst deine Schuhe wieder an."); + _vm->renderMessage(kStringArsanoEntrance18); _gm->_state._shoes = 2; } else - _vm->renderMessage("Du durchsuchst die Klos nach|anderen brauchbaren Sachen,|findest aber nichts."); + _vm->renderMessage(kStringArsanoEntrance19); } else { if (_gm->_rooms[AIRLOCK]->getObject(5)->hasProperty(WORN)) - _vm->renderMessage("Bevor du aufs Klo gehst,|solltest du besser deinen|Raumanzug ausziehen."); + _vm->renderMessage(kStringArsanoEntrance20); else { - _vm->renderMessage("Du gehst seit sieben Jahren das|erste Mal wieder aufs Klo!"); + _vm->renderMessage(kStringArsanoEntrance21); _gm->mouseWait(_gm->_timer1); _vm->removeMessage(); - _vm->renderMessage("In einem der Schlie\341f\204cher,|die sich auch im Raum befinden,|findest du einige M\201nzen."); + _vm->renderMessage(kStringArsanoEntrance22); _gm->takeObject(*getObject(16)); _gm->_state._coins = 5; } @@ -1716,7 +1716,7 @@ bool ArsanoEntrance::interact(Action verb, Object &obj1, Object &obj2) { _shown[kMaxSection - 5] = kShownTrue; } else if ((verb == ACTION_USE) && Object::combine(obj1, obj2, COINS, CAR_SLOT)) { if ((_gm->_state._coins < 5) && (getObject(7 - _gm->_state._coins)->_click == 7)) - _vm->renderMessage("Mach doch zuerst das Fach leer!"); + _vm->renderMessage(kStringArsanoEntrance23); else { _gm->drawImage(15 - _gm->_state._coins); getObject(8 - _gm->_state._coins)->_click = 7; @@ -1731,14 +1731,14 @@ bool ArsanoEntrance::interact(Action verb, Object &obj1, Object &obj2) { } } else if ((verb == ACTION_LOOK) && (obj1._id == KITCHEN_SIGN) && _gm->_state._language) { if (_gm->_state._language == 2) - _vm->renderMessage("Komisch! Auf einmal kannst du|das Schild lesen! Darauf steht:|\"Zutritt nur f\201r Personal\"."); + _vm->renderMessage(kStringArsanoEntrance24); obj1._description = kStringDoorDescription5; if (_gm->_state._language == 1) return false; _gm->_state._language = 1; } else if ((verb == ACTION_LOOK) && (obj1._id == BATHROOM_SIGN) && _gm->_state._language) { if (_gm->_state._language == 2) - _vm->renderMessage("Komisch! Auf einmal kannst|du das Schild lesen!|Darauf steht:\"Toilette\"."); + _vm->renderMessage(kStringArsanoEntrance25); obj1._description = kStringDoorDescription6; if (_gm->_state._language == 1) return false; @@ -1747,7 +1747,7 @@ bool ArsanoEntrance::interact(Action verb, Object &obj1, Object &obj2) { if (!((_gm->_rooms[AIRLOCK]->getObject(4)->hasProperty(WORN)) && (_gm->_rooms[AIRLOCK]->getObject(5)->hasProperty(WORN)) && (_gm->_rooms[AIRLOCK]->getObject(6)->hasProperty(WORN)))) { - _vm->renderMessage("Du ziehst den Raumanzug wieder an."); + _vm->renderMessage(kStringArsanoEntrance26); getObject(4)->setProperty(WORN); getObject(5)->setProperty(WORN); getObject(6)->setProperty(WORN); @@ -1756,9 +1756,10 @@ bool ArsanoEntrance::interact(Action verb, Object &obj1, Object &obj2) { } return false; } else if ((verb == ACTION_USE) && Object::combine(obj1, obj2, KNIFE, PORTER)) - _vm->renderMessage("Nicht so gewaltt\204tig!"); + _vm->renderMessage(kStringArsanoEntrance27); else return false; + return true; } @@ -2251,7 +2252,7 @@ bool ArsanoMeetup3::interact(Action verb, Object &obj1, Object &obj2) { byte zeilen3[2] = {1, 1}; if ((verb == ACTION_WALK) && (obj1._id == STAR)) - _vm->renderMessage("Unsinn!"); + _vm->renderMessage(kStringArsanoMeetup2); else if ((verb == ACTION_LOOK) && (obj1._id == STAR)) { _vm->renderImage(26, 0); _vm->paletteBrightness(); diff --git a/engines/supernova/rooms.h b/engines/supernova/rooms.h index 6e570efac7..8e857e889e 100644 --- a/engines/supernova/rooms.h +++ b/engines/supernova/rooms.h @@ -625,20 +625,20 @@ public: _objectState[16] = Object(_id, kStringCoins,kStringCoinsDescription,COINS,TAKE|COMBINABLE,255,255,0); _objectState[17] = Object(_id, kStringTabletPackage,kStringTabletPackageDescription,PILL_HULL,TAKE,255,255,0); - _dialog1[0] = "Wieso das denn nicht?"; - _dialog1[1] = "Wo bin ich hier?"; - _dialog1[2] = "Wo soll ich die Schuhe ablegen?"; - _dialog1[3] = "Schwachsinn! Ich gehe jetzt nach oben!"; - _dialog1[4] = "|"; + _dialog1[0] = kStringArsanoDialog7; + _dialog1[1] = kStringArsanoDialog1; + _dialog1[2] = kStringArsanoDialog8; + _dialog1[3] = kStringArsanoDialog9; + _dialog1[4] = kStringDialogSeparator; - _dialog2[0] = "Wo bin ich hier?"; - _dialog2[1] = "Sch\224nes Wetter heute, nicht wahr?"; - _dialog2[2] = "W\201rden Sie mich bitte durchlassen."; - _dialog2[3] = "Hey Alter, la\341 mich durch!"; - _dialog2[4] = "|"; + _dialog2[0] = kStringArsanoDialog1; + _dialog2[1] = kStringArsanoDialog2; + _dialog2[2] = kStringArsanoDialog3; + _dialog2[3] = kStringArsanoDialog4; + _dialog2[4] = kStringDialogSeparator; - _dialog3[0] = "Was haben Sie gesagt?"; - _dialog3[1] = "Sprechen Sie bitte etwas deutlicher!"; + _dialog3[0] = kStringArsanoDialog5; + _dialog3[1] = kStringArsanoDialog6; _eyewitness = 5; } @@ -647,9 +647,9 @@ public: virtual void animation(); private: - Common::String _dialog1[5]; - Common::String _dialog2[5]; - Common::String _dialog3[5]; + StringID _dialog1[5]; + StringID _dialog2[5]; + StringID _dialog3[5]; byte _eyewitness; }; class ArsanoRemaining : public Room { @@ -695,10 +695,10 @@ public: _objectState[7] = Object(_id, kStringBill,kStringBillDescription,NULLOBJECT,TAKE|COMBINABLE,255,255,0); _objectState[8] = Object(_id, kStringKeycard3,kStringDefaultDescription,KEYCARD_R,TAKE|COMBINABLE,255,255,0); - _dialog1[0] = "K\224nnten Sie mir ein Gericht empfehlen?"; - _dialog1[1] = "Wie lange dauert es denn noch bis zur Supernova?"; - _dialog1[2] = "Sie kommen mir irgendwie bekannt vor."; - _dialog1[3] = "|"; + _dialog1[0] = kStringDialogArsanoRoger1; + _dialog1[1] = kStringDialogArsanoRoger2; + _dialog1[2] = kStringDialogArsanoRoger3; + _dialog1[3] = kStringDialogSeparator; _eyewitness = 5; } @@ -708,7 +708,7 @@ public: virtual bool interact(Action verb, Object &obj1, Object &obj2); private: - Common::String _dialog1[4]; + StringID _dialog1[4]; byte _eyewitness; byte _hands; }; @@ -793,19 +793,19 @@ public: _objectState[1] = Object(_id, kStringStar,kStringDefaultDescription,STAR,NULLTYPE,1,1,0); _objectState[2] = Object(_id, kStringCave,kStringDefaultDescription,NULLOBJECT,EXIT,255,255,0,CAVE,22); - _dialog2[0] = "Wo bin ich hier?"; - _dialog2[1] = "Was wollen Sie von mir?"; - _dialog2[2] = "Hilfe!!"; - _dialog2[3] = "Warum sprechen Sie meine Sprache?"; - _dialog3[0] = "Ja, ich bin einverstanden."; - _dialog3[1] = "Nein, lieber bleibe ich hier, als mit Ihnen zu fliegen."; + _dialog2[0] = kStringArsanoDialog1; + _dialog2[1] = kStringDialogArsanoMeetup3_1; + _dialog2[2] = kStringDialogArsanoMeetup3_2; + _dialog2[3] = kStringDialogArsanoMeetup3_3; + _dialog3[0] = kStringDialogArsanoMeetup3_4; + _dialog3[1] = kStringDialogArsanoMeetup3_5; } virtual bool interact(Action verb, Object &obj1, Object &obj2); private: - Common::String _dialog2[4]; - Common::String _dialog3[2]; + StringID _dialog2[4]; + StringID _dialog3[2]; }; // Axacuss diff --git a/engines/supernova/state.cpp b/engines/supernova/state.cpp index 2bbcb0a6b3..293f3d410e 100644 --- a/engines/supernova/state.cpp +++ b/engines/supernova/state.cpp @@ -787,6 +787,10 @@ void GameManager::say(const char *text) { // STUB } +void GameManager::reply(StringID textId, int aus1, int aus2) { + // STUB +} + void GameManager::reply(const char *text, int aus1, int aus2) { // STUB } diff --git a/engines/supernova/state.h b/engines/supernova/state.h index c4d1cf4166..f294f14f7c 100644 --- a/engines/supernova/state.h +++ b/engines/supernova/state.h @@ -185,6 +185,7 @@ public: void removeSentence(int sentence, int number); void addSentence(int sentence, int number); void say(const char *text); + void reply(StringID textId, int aus1, int aus2); void reply(const char *text, int aus1, int aus2); void shipStart(); void shot(int a, int b); |