[Scummvm-cvs-logs] scummvm master -> 7705c13cc41ba9b4c82d2f061cc42a84f004719e

criezy criezy at scummvm.org
Tue Jun 26 22:21:14 CEST 2012


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:
c2aabea6fa DRASCULA: Add Spanish subtitles for von Braun cutscene
7705c13cc4 SWORD1: Add workaround for missing subtitles in the demo


Commit: c2aabea6faa6fc4a056000aa55859526b0c72034
    https://github.com/scummvm/scummvm/commit/c2aabea6faa6fc4a056000aa55859526b0c72034
Author: Thierry Crozat (criezy at scummvm.org)
Date: 2012-06-26T13:20:24-07:00

Commit Message:
DRASCULA: Add Spanish subtitles for von Braun cutscene

This finally solves bug #3069981 DRASCULA: no subtitles in scene
with "von Braun". Thanks go to Tomás Maidagan for providing these
subtitles.

Changed paths:
    devtools/create_drascula/staticdata.h
    dists/engine-data/drascula.dat



diff --git a/devtools/create_drascula/staticdata.h b/devtools/create_drascula/staticdata.h
index 21b9a82..e0e4f9d 100644
--- a/devtools/create_drascula/staticdata.h
+++ b/devtools/create_drascula/staticdata.h
@@ -6031,10 +6031,10 @@ const char *_texthis[NUM_LANGS][NUM_TEXTHIS] = {
 },
 {
 	"",
-	"",
-	"",
-	"",
-	""
+	"Hace mucho tiempo, parece ser que Drascula mato a la mujer de Von Braun, asi que, con la intencion de enfrentarse al conde, Von Braun empezo a investigar todo lo que pudo sobre vampiros.",
+	"Cuando creyo estar preparado, subio al castillo y tuvo un enfrentamiento muy violento con Drascula.",
+	"Nadie sabe que paso exactamente. Aunque Von Braun perdio, Drascula no pudo matarlo.",
+	"Von Braun se sintio humillado por su derrota, huyo del castillo y no ha tenido valor para enfrentarse de nuevo a Drascula."
 },
 {
 	"",
diff --git a/dists/engine-data/drascula.dat b/dists/engine-data/drascula.dat
index 0938ef4..e2b046a 100644
Binary files a/dists/engine-data/drascula.dat and b/dists/engine-data/drascula.dat differ


Commit: 7705c13cc41ba9b4c82d2f061cc42a84f004719e
    https://github.com/scummvm/scummvm/commit/7705c13cc41ba9b4c82d2f061cc42a84f004719e
Author: Thierry Crozat (criezy at scummvm.org)
Date: 2012-06-26T13:20:24-07:00

Commit Message:
SWORD1: Add workaround for missing subtitles in the demo

Changed paths:
    engines/sword1/objectman.cpp
    engines/sword1/objectman.h



diff --git a/engines/sword1/objectman.cpp b/engines/sword1/objectman.cpp
index d3890cc..f3c83c1 100644
--- a/engines/sword1/objectman.cpp
+++ b/engines/sword1/objectman.cpp
@@ -107,6 +107,7 @@ char *ObjectMan::lockText(uint32 textId) {
 				warning("Missing translation for textId %u (\"%s\")", textId, text);
 			unlockText(textId, BS1_ENGLISH);
 		}
+		
 		return _missingSubTitleStr;
 	}
 	return text;
@@ -118,6 +119,42 @@ char *ObjectMan::lockText(uint32 textId, uint8 lang) {
 		return NULL;
 	addr += sizeof(Header);
 	if ((textId & ITM_ID) >= _resMan->readUint32(addr)) {
+		// Workaround for missing sentences in some langages in the demo.
+		switch(textId) {
+		case 8455194:
+			return const_cast<char *>(_translationId8455194[lang]);
+		case 8455195:
+			return const_cast<char *>(_translationId8455195[lang]);
+		case 8455196:
+			return const_cast<char *>(_translationId8455196[lang]);
+		case 8455197:
+			return const_cast<char *>(_translationId8455197[lang]);
+		case 8455198:
+			return const_cast<char *>(_translationId8455198[lang]);
+		case 8455199:
+			return const_cast<char *>(_translationId8455199[lang]);
+		case 8455200:
+			return const_cast<char *>(_translationId8455200[lang]);
+		case 8455201:
+			return const_cast<char *>(_translationId8455201[lang]);
+		case 8455202:
+			return const_cast<char *>(_translationId8455202[lang]);
+		case 8455203:
+			return const_cast<char *>(_translationId8455203[lang]);
+		case 8455204:
+			return const_cast<char *>(_translationId8455204[lang]);
+		case 8455205:
+			return const_cast<char *>(_translationId8455205[lang]);
+		case 6488080:
+			return const_cast<char *>(_translationId6488080[lang]);
+		case 6488081:
+			return const_cast<char *>(_translationId6488081[lang]);
+		case 6488082:
+			return const_cast<char *>(_translationId6488082[lang]);
+		case 6488083:
+			return const_cast<char *>(_translationId6488083[lang]);
+		}
+
 		warning("ObjectMan::lockText(%d): only %d texts in file", textId & ITM_ID, _resMan->readUint32(addr));
 		return NULL;
 	}
@@ -127,7 +164,7 @@ char *ObjectMan::lockText(uint32 textId, uint8 lang) {
 		// We use the hardcoded text in this case.
 		if (textId == 2950145)
 			return const_cast<char *>(_translationId2950145[lang]);
-
+		
 		warning("ObjectMan::lockText(%d): text number has no text lines", textId);
 		return NULL;
 	}
@@ -204,7 +241,183 @@ const char *const ObjectMan::_translationId2950145[7] = {
 	"Eh?",     // Italian
 	"\277Eh?", // Spanish
 	"Ano?",    // Czech
-	" "        // Portuguese
+	NULL       // Portuguese
+};
+
+// Missing translation for textId 8455194 (in the demo).
+const char *const ObjectMan::_translationId8455194[7] = {
+	NULL, // "Who was the guy you were supposed to meet?",              // English (not needed)
+	"Qui \351tait l'homme que vous deviez rencontrer?",                 // French
+	"Wer war der Typ, den Du treffen wolltest?",                        // German
+	"Chi dovevi incontrare?",                                           // Italian
+	"\277Qui\351n era el hombre con el que ten\355as que encontrarte?", // Spanish
+	NULL,                                                               // Czech
+	NULL                                                                // Portuguese
+};
+
+// Missing translation for textId 8455195 (in the demo).
+const char *const ObjectMan::_translationId8455195[7] = {
+	NULL, // "His name was Plantard. I didn't know him, but he called me last night.",                    // English (not needed)
+	"Son nom \351tait Plantard. Je ne le connaissais pas, mais il m'avait t\351l\351phon\351 la veille.", // French
+	"Sein Name war Plantard. Ich kannte ihn nicht, aber er hat mich letzte Nacht angerufen.",             // German
+	"Si chiamava Plantard. Mi ha chiamato ieri sera, ma non lo conoscevo.",                               // Italian
+	"Su nombre era Plantard. Yo no lo conoc\355a pero \351l me llam\363 ayer por la noche.",              // Spanish
+	NULL,                                                                                                 // Czech
+	NULL                                                                                                  // Portuguese
+};
+
+// Missing translation for textId 8455196 (in the demo).
+const char *const ObjectMan::_translationId8455196[7] = {
+	NULL, // "He said he had a story which would interest me.",           // English (not needed)
+	"Il a dit qu'il avait une histoire qui devrait m'int\351resser.",     // French
+	"Er sagte, er h\344tte eine Story, die mich interessieren w\374rde.", // German
+	"Mi disse che aveva una storia che mi poteva interessare.",           // Italian
+	"Dijo que ten\355a una historia que me interesar\355a.",              // Spanish
+	NULL,                                                                 // Czech
+	NULL                                                                  // Portuguese
+};
+
+// Missing translation for textId 8455197 (in the demo).
+const char *const ObjectMan::_translationId8455197[7] = {
+	NULL, // "He asked me to meet him at the caf\351.",          // English (not needed)
+	"Il m'a demand\351 de le rencontrer au caf\351.",            // French
+	"Er fragte mich, ob wir uns im Caf\351 treffen k\366nnten.", // German
+	"Mi chiese di incontrarci al bar.",                          // Italian
+	"Me pidi\363 que nos encontr\341ramos en el caf\351.",       // Spanish
+	NULL,                                                        // Czech
+	NULL                                                         // Portuguese
+};
+
+// Missing translation for textId 8455198 (in the demo).
+const char *const ObjectMan::_translationId8455198[7] = {
+	NULL, // "I guess I'll never know what he wanted to tell me...",  // English (not needed)
+	"Je suppose que je ne saurai jamais ce qu'il voulait me dire...", // French
+	"Ich werde wohl nie erfahren, was er mir sagen wollte...",        // German
+	"Penso che non sapr\362 mai che cosa voleva dirmi...",            // Italian
+	"Supongo que nunca sabr\351 qu\351 me quer\355a contar...",       // Spanish
+	NULL,                                                             // Czech
+	NULL                                                              // Portuguese
+};
+
+// Missing translation for textId 8455199 (in the demo).
+const char *const ObjectMan::_translationId8455199[7] = {
+	NULL, // "Not unless you have Rosso's gift for psychic interrogation.",           // English (not needed)
+	"Non, \340 moins d'avoir les dons de Rosso pour les interrogatoires psychiques.", // French
+	"Es sei denn, Du h\344ttest Rosso's Gabe der parapsychologischen Befragung.",     // German
+	"A meno che tu non riesca a fare interrogatori telepatici come Rosso.",           // Italian
+	"A no ser que tengas el don de Rosso para la interrogaci\363n ps\355quica.",      // Spanish
+	NULL,                                                                             // Czech
+	NULL                                                                              // Portuguese
+};
+
+// Missing translation for textId 8455200 (in the demo).
+const char *const ObjectMan::_translationId8455200[7] = {
+	NULL, // "How did Plantard get your name?",     // English (not needed)
+	"Comment Plantard a-t-il obtenu votre nom?",    // French
+	"Woher hat Plantard Deinen Namen?",             // German
+	"Come ha fatto Plantard a sapere il tuo nome?", // Italian
+	"\277C\363mo consigui\363 Plantard tu nombre?", // Spanish
+	NULL,                                           // Czech
+	NULL                                            // Portuguese
+};
+
+// Missing translation for textId 8455201 (in the demo).
+const char *const ObjectMan::_translationId8455201[7] = {
+	NULL, // "Through the newspaper - La Libert\351.", // English (not needed)
+	"Par mon journal... La Libert\351.",      // French
+	"\334ber die Zeitung - La Libert\351.",   // German
+	"Tramite il giornale La Libert\351.",     // Italian
+	"Por el peri\363dico - La Libert\351.",   // Spanish
+	NULL,                                     // Czech
+	NULL                                      // Portuguese
+};
+
+// Missing translation for textId 8455202 (in the demo).
+const char *const ObjectMan::_translationId8455202[7] = {
+	NULL, // "I'd written an article linking two unsolved murders, one in Italy, the other in Japan.",                                                    // English (not needed)
+	"J'ai \351crit un article o\371 je faisais le lien entre deux meurtres inexpliqu\351s, en Italie et au japon.",                                       // French
+	"Ich habe einen Artikel geschrieben, in dem ich zwei ungel\366ste Morde miteinander in Verbindung bringe, einen in Italien, einen anderen in Japan.", // German
+	"Ho scritto un articolo che metteva in collegamento due omicidi insoluti in Italia e Giappone.",                                                      // Italian
+	"Yo hab\355a escrito un art\355culo conectando dos asesinatos sin resolver, uno en Italia, el otro en Jap\363n.",                                     // Spanish
+	NULL,                                                                                                                                                 // Czech
+	NULL                                                                                                                                                  // Portuguese
+};
+
+// Missing translation for textId 8455203 (in the demo).
+const char *const ObjectMan::_translationId8455203[7] = {
+	NULL, // "The cases were remarkably similar...",      // English (not needed)
+	"Les affaires \351taient quasiment identiques...",    // French
+	"Die F\344lle sind sich bemerkenswert \344hnlich...", // German
+	"I casi erano sorprendentemente uguali...",           // Italian
+	"Los casos eran incre\355blemente parecidos...",      // Spanish
+	NULL,                                                 // Czech
+	NULL                                                  // Portuguese
+};
+
+// Missing translation for textId 8455204 (in the demo).
+const char *const ObjectMan::_translationId8455204[7] = {
+	NULL, // "...a wealthy victim, no apparent motive, and a costumed killer.",              // English (not needed)
+	"...une victime riche, pas de motif apparent, et un tueur d\351guis\351.",              // French
+	"...ein wohlhabendes Opfer, kein offensichtliches Motiv, und ein verkleideter Killer.", // German
+	"...una vittima ricca, nessun motivo apparente e un assassino in costume.",             // Italian
+	"...una v\355ctima rica, sin motivo aparente, y un asesino disfrazado.",                // Spanish
+	NULL,                                                                                   // Czech
+	NULL                                                                                    // Portuguese
+};
+
+// Missing translation for textId 8455205 (in the demo).
+const char *const ObjectMan::_translationId8455205[7] = {
+	NULL, // "Plantard said he could supply me with more information.",        // English (not needed)
+	"Plantard m'a dit qu'il pourrait me fournir des renseignements.",          // French
+	"Plantard sagte, er k\366nne mir weitere Informationen beschaffen.",       // German
+	"Plantard mi disse che mi avrebbe fornito ulteriori informazioni.",        // Italian
+	"Plantard dijo que \351l me pod\355a proporcionar m\341s informaci\363n.", // Spanish
+	NULL,                                                                      // Czech
+	NULL                                                                       // Portuguese
+};
+
+// Missing translation for textId 6488080 (in the demo).
+const char *const ObjectMan::_translationId6488080[7] = {
+	NULL, // "I wasn't going to head off all over Paris until I'd investigated some more.", // English (not needed)
+	"Je ferais mieux d'enqu\351ter un peu par ici avant d'aller me promener ailleurs.",     // French
+	"Ich durchquere nicht ganz Paris, bevor ich etwas mehr herausgefunden habe.",           // German
+	"Non mi sarei incamminato per tutta Parigi prima di ulteriori indagini.",               // Italian
+	"No iba a ponerme a recorrer Par\355s sin haber investigado un poco m\341s.",           // Spanish
+	NULL,                                                                                   // Czech
+	NULL                                                                                    // Portuguese
+};
+
+// Missing translation for textId 6488081 (in the demo).
+const char *const ObjectMan::_translationId6488081[7] = {
+	NULL, // "I wasn't sure what I was going to do when I caught up with that clown...", // English (not needed)
+	"Je ne savais pas ce que je ferais quand je rattraperais le clown...",               // French
+	"Ich wu\337te nicht, worauf ich mich einlie\337, als ich dem Clown nachjagte...",    // German
+	"Non sapevo cosa avrei fatto una volta raggiunto quel clown...",                     // Italian
+	"No sab\355a muy bien qu\351 es lo que har\355a cuando alcanzara al payaso...",      // Spanish
+	NULL,                                                                                // Czech
+	NULL                                                                                 // Portuguese
+};
+
+// Missing translation for textId 6488082 (in the demo).
+const char *const ObjectMan::_translationId6488082[7] = {
+	NULL, // "...but before I knew it, I was drawn into a desperate race between two ruthless enemies.",                             // English (not needed)
+	"...mais avant de m'en rendre compte je me retrouvais happ\351 dans une course effr\351n\351e entre deux ennemis impitoyables.", // French
+	"... doch bevor ich mich versah, war ich inmitten eines Wettlaufs von zwei r\374cksichtslosen Feinden.",                         // German
+	"... ma prima che me ne rendessi conto, fui trascinato in una corsa disperata con due spietati nemici.",                         // Italian
+	"...pero sin darme cuenta, acab\351 en medio de una desesperada carrera entre dos despiadados enemigos.",                        // Spanish
+	NULL,                                                                                                                            // Czech
+	NULL                                                                                                                             // Portuguese
+};
+
+// Missing translation for textId 6488083 (in the demo).
+const char *const ObjectMan::_translationId6488083[7] = {
+	NULL, // "The goal: the mysterious power of the Broken Sword.",    // English (not needed)
+	"Le but: les pouvoirs myst\351rieux de l'\351p\351e bris\351e.",   // French
+	"Das Ziel: die geheimnisvolle Macht des zerbrochenen Schwertes.",  // German
+	"Obiettivo: il misterioso potere della Spada spezzata.",           // Italian
+	"El objetivo: el misterioso poder de la Espada Rota.",             // Spanish
+	NULL,                                                              // Czech
+	NULL                                                               // Portuguese
 };
 
 } // End of namespace Sword1
diff --git a/engines/sword1/objectman.h b/engines/sword1/objectman.h
index cce3605..197b437 100644
--- a/engines/sword1/objectman.h
+++ b/engines/sword1/objectman.h
@@ -63,6 +63,22 @@ private:
 	uint8 *_cptData[TOTAL_SECTIONS];
 	static char _missingSubTitleStr[];
 	static const char *const _translationId2950145[7];        //translation for textId 2950145 (missing from cluster file for some langages)
+	static const char *const _translationId8455194[7];        //translation for textId 8455194 (missing in the demo)
+	static const char *const _translationId8455195[7];        //translation for textId 8455195 (missing in the demo)
+	static const char *const _translationId8455196[7];        //translation for textId 8455196 (missing in the demo)
+	static const char *const _translationId8455197[7];        //translation for textId 8455197 (missing in the demo)
+	static const char *const _translationId8455198[7];        //translation for textId 8455198 (missing in the demo)
+	static const char *const _translationId8455199[7];        //translation for textId 8455199 (missing in the demo)
+	static const char *const _translationId8455200[7];        //translation for textId 8455200 (missing in the demo)
+	static const char *const _translationId8455201[7];        //translation for textId 8455201 (missing in the demo)
+	static const char *const _translationId8455202[7];        //translation for textId 8455202 (missing in the demo)
+	static const char *const _translationId8455203[7];        //translation for textId 8455203 (missing in the demo)
+	static const char *const _translationId8455204[7];        //translation for textId 8455204 (missing in the demo)
+	static const char *const _translationId8455205[7];        //translation for textId 8455205 (missing in the demo)
+	static const char *const _translationId6488080[7];        //translation for textId 6488081 (missing in the demo)
+	static const char *const _translationId6488081[7];        //translation for textId 6488081 (missing in the demo)
+	static const char *const _translationId6488082[7];        //translation for textId 6488082 (missing in the demo)
+	static const char *const _translationId6488083[7];        //translation for textId 6488083 (missing in the demo)
 };
 
 } // End of namespace Sword1






More information about the Scummvm-git-logs mailing list