diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/tony/mpal/mpal.cpp | 785 |
1 files changed, 0 insertions, 785 deletions
diff --git a/engines/tony/mpal/mpal.cpp b/engines/tony/mpal/mpal.cpp index 76ca8a5db3..16d8a3213b 100644 --- a/engines/tony/mpal/mpal.cpp +++ b/engines/tony/mpal/mpal.cpp @@ -2120,791 +2120,6 @@ int mpalLoadState(byte *buf) { return GLOBALS._nVars * sizeof(MPALVAR) + 4; } -bool bDontOutput; - -struct MsgCommentsStruct { - uint16 wStart; - uint16 wEnd; - const char *pComment; -}; -const MsgCommentsStruct MsgComments[] = { - { 10, 16, "###" }, - { 560, 563, "@@@ BUTCH & DUDLEY:" }, - { 551, 553, "@@@ JACK'S LETTER (JACK'S VOICE):" }, - { 679, 679, "@@@ OFF-SCREEN VOICE:" }, - { 799, 799, "###" }, - { 830, 838, "RE-HASHING (FROM MACBETH):" }, - { 890, 894, "@@@ BEARDED LADY FROM WITHIN HER ROOM:" }, - { 1175, 1175, "###" }, - { 1210, 1210, "###" }, - { 1347, 1349, "###" }, - { 1175, 1175, "###" }, - { 1342, 1343, "###" }, - { 1742, 1742, "@@@ OFF-SCREEN VOICE:" }, - { 1749, 1749, "###" }, - { 1759, 1759, "###" }, - { 2165, 2166, "@@@ MORTIMER:" }, - { 2370, 2372, "@@@ ELECTRONIC VOICE FROM AN AUTOMATIC PICTURE MACHINE:" }, - { 2580, 2589, "@@@ BIFF:" }, - { 2590, 2593, "@@@ BARTENDER:" }, - { 2596, 2596, "@@@ SAD PIRATE:" }, - { 2760, 2767, "@@@ EGGHEAD:" }, - { 2959, 2959, "@@@ MONSTROUS VOICE FROM BEHIND A LOCKED DOOR:" }, - { 3352, 3352, "@@@ POLLY:" }, - { 3378, 3379, "@@@ POLLY:" }, - { 3461, 3469, "@@@ RANDALL:" }, - { 3571, 3574, "@@@ CAPTAIN'S JOURNAL (CAPTAIN'S VOICE):" }, - { 3646, 3646, "NOTE: THIS SENTENCE ENDS THE STORY TOLD IN SENTENCES 03640 - 03643:" }, - { 3647, 3648, "TONY SPEAKS TRYING TO IMITATE CAPTAIN CORNELIUS' VOICE:" }, - { 3670, 3671, "###" }, - { 3652, 3652, "###" }, - { 3656, 3657, "@@@ GATEKEEPER:" }, - { 3658, 3659, "@@@ GATEKEEPER (FAR AWAY):" }, - { 3790, 3795, "@@@ GATEKEEPER:" }, - { 3798, 3799, "@@@ OFF-SCREEN VOICE:" }, - { 4384, 4384, "###" }, - { 4394, 4395, "###" }, - { 4780, 4780, "###" }, - { 5089, 5089, "TONY PLAYING SOMEONE ELSE, WITH A DEEPER TONE:" }, - { 5090, 5090, "NORMAL TONY:" }, - { 5091, 5091, "TONY PLAYING SOMEONE ELSE, WITH A DEEPER TONE:" }, - { 5262, 5262, "@@@ OFF-SCREEN VOICE" }, - { 5276, 5277, "###" }, - { 5326, 5326, "###" }, - { 5472, 5472, "LYRICS FROM THE SONG \"I AM ONE\", BY SMASHING PUMPKINS:" }, - { 5488, 5488, "LYRICS FROM THE SONG \"I AM ONE\", BY SMASHING PUMPKINS:" }, - { 5652, 5653, "###" }, -//bernie { 11000, 15000, "###" }, - { 11000, 11111, "###" }, - - - { 0, 0, NULL } -}; - -void outputStartMsgComment(uint16 wNum, Common::OutSaveFile *f) { - int i; - - for (i = 0; MsgComments[i].wStart != 0; i++) - if (MsgComments[i].wStart == wNum) { - debugC(DEBUG_BASIC, kTonyDebugMPAL, "Start: %d\n", wNum); - - f->writeString("</TABLE>\n<P>\n<P>\n"); - - if (strcmp(MsgComments[i].pComment, "###") != 0 && strncmp(MsgComments[i].pComment, "@@@", 3) != 0) { - f->writeString(Common::String::format("%s\n", MsgComments[i].pComment)); - f->writeString("<P>\n<P>\n<TABLE WIDTH = 100%% BORDER = 1>\n"); - } else - bDontOutput = true; - return; - } -} - -void OutputEndMsgComment(uint16 wNum, Common::OutSaveFile *f) { - int i; - - for (i = 0; MsgComments[i].wEnd != 0; i++) - if (MsgComments[i].wEnd == wNum) { - debugC(DEBUG_BASIC, kTonyDebugMPAL, "End: %d\n", wNum); - - if (strcmp(MsgComments[i].pComment, "###") != 0 && strncmp(MsgComments[i].pComment, "@@@", 3) != 0) { - f->writeString("</TABLE>\n<P>\n"); - } else - bDontOutput = false; - - f->writeString("<P>\n<P>\n<TABLE WIDTH = 100%% BORDER = 1>\n"); - return; - } -} - - -int OutputStartOther(uint16 wNum, Common::OutSaveFile *f) { - int i; - - for (i = 0; MsgComments[i].wStart != 0; i++) - if (MsgComments[i].wStart <= wNum && MsgComments[i].wEnd >= wNum) { - if (strncmp(MsgComments[i].pComment, "@@@", 3) == 0) { - if (MsgComments[i].wStart == wNum) { - f->writeString(Common::String::format("%s\n", MsgComments[i].pComment + 4)); - f->writeString("<P>\n<P>\n<TABLE WIDTH = 100%% BORDER = 1>\n"); - } - - return 1; - } - } - - return 0; -} - -void outputEndOther(uint16 wNum, Common::OutSaveFile *f) { - int i; - - for (i = 0; MsgComments[i].wStart != 0; i++) - if (MsgComments[i].wEnd == wNum && strncmp(MsgComments[i].pComment, "@@@", 3) == 0) { - f->writeString("</TABLE>\n<P>\n"); - break; - } -} - -void mpalDumpMessages() { - int i, j; - char *lpMessage; - char *p; - char *lpPeriods[30]; - char fname[64]; - char frase[2048]; - int nPeriods; - Common::OutSaveFile *f, *v1; - - v1 = g_system->getSavefileManager()->openForSaving("voicelist.txt"); - - LockMsg(); - - bDontOutput = false; - - debugC(DEBUG_BASIC, kTonyDebugMPAL, "Dumping MESSAGES.HTM...\n"); - - f = g_system->getSavefileManager()->openForSaving("Messages.htm"); - f->writeString("<HTML>\n<BODY>\n<TABLE WIDTH = 100%% BORDER = 1>\n"); - - for (i = 0; i < GLOBALS._nMsgs; i++) { - lpMessage = (char *)globalLock(GLOBALS._lpmmMsgs[i]._hText); - if (*lpMessage != '\0') { - // bernie: debug - /*if (GLOBALS.lpmmMsgs[i].wNum == 1950) { - int a = 1; - }*/ - - nPeriods = 1; - p = lpPeriods[0] = lpMessage; - - outputStartMsgComment(GLOBALS._lpmmMsgs[i]._wNum, f); - - while (1) { - // Find the end of the current period - while (*p != '\0') - p++; - - // If there is another '\0' at the end of the message, then finish - p++; - if (*p == '\0') - break; - - // Otherwise there is another line, so remember the next one's start - lpPeriods[nPeriods++] = p; - } - - // Now make a loop over all the periods - for (j = 0; j < nPeriods; j++) { - if (nPeriods == 1) - sprintf(fname, "000-%05d.WAV", GLOBALS._lpmmMsgs[i]._wNum); - else - sprintf(fname, "000-%05d-%02d.WAV", GLOBALS._lpmmMsgs[i]._wNum,j); - - strcpy(frase, lpPeriods[j]); - - while ((p = strchr(frase,'^')) != NULL) - *p = '\"'; - - p = frase; - while (*p == ' ') - p++; - if (*p == '\0') - continue; - - if (!bDontOutput) { - v1->writeString(Common::String::format("%s\n", fname)); - f->writeString("\t<TR>\n"); - f->writeString(Common::String::format("\t\t<TD WIDTH=20%%> %s </B></TD>\n", fname)); - f->writeString(Common::String::format("\t\t<TD> %s </TD>\n", frase)); - f->writeString("\t</TR>\n"); - } - } - - OutputEndMsgComment(GLOBALS._lpmmMsgs[i]._wNum, f); - - globalUnlock(GLOBALS._lpmmMsgs[i]._hText); - } - } - - f->writeString("</TABLE>\n</BODY>\n</HTML>\n"); - - f->finalize(); - v1->finalize(); - delete f; - delete v1; - - UnlockMsg(); -} - -void mpalDumpOthers() { - int i,j; - char *lpMessage; - char *p; - char *lpPeriods[30]; - char fname[64]; - char frase[2048]; - int nPeriods; - - Common::OutSaveFile *f, *v1; - - v1 = g_system->getSavefileManager()->openForSaving("voicelist.txt"); - f = g_system->getSavefileManager()->openForSaving("Others.htm"); - LockMsg(); - - bDontOutput = false; - - debugC(DEBUG_BASIC, kTonyDebugMPAL, "Dumping OTHERS.HTM...\n"); - - f->writeString("<HTML>\n<BODY>\n"); - - for (i = 0; i < GLOBALS._nMsgs; i++) { - lpMessage = (char *)globalLock(GLOBALS._lpmmMsgs[i]._hText); - if (*lpMessage != '\0') { - nPeriods = 1; - p = lpPeriods[0] = lpMessage; - - if (OutputStartOther(GLOBALS._lpmmMsgs[i]._wNum, f)) { - while (1) { - // Find the end of the current period - while (*p != '\0') - p++; - - // If there is another '0' at the end, then the message is finished - p++; - if (*p == '\0') - break; - - // Remember the start of the next line - lpPeriods[nPeriods++] = p; - } - - // Now loop over all the periods - for (j = 0; j < nPeriods; j++) { - if (nPeriods == 1) - sprintf(fname, "000-%05d.WAV", GLOBALS._lpmmMsgs[i]._wNum); - else - sprintf(fname, "000-%05d-%02d.WAV", GLOBALS._lpmmMsgs[i]._wNum,j); - - strcpy(frase,lpPeriods[j]); - - while ((p = strchr(frase, '^')) != NULL) - *p = '\"'; - - p = frase; - while (*p == ' ') - p++; - if (*p == '\0') - continue; - - if (!bDontOutput) { - v1->writeString(Common::String::format("%s\n", fname)); - f->writeString("\t<TR>\n"); - f->writeString(Common::String::format("\t\t<TD WIDTH=20%%> %s </B></TD>\n", fname)); - f->writeString(Common::String::format("\t\t<TD> %s </TD>\n", frase)); - f->writeString("\t</TR>\n"); - } - } - } - - outputEndOther(GLOBALS._lpmmMsgs[i]._wNum, f); - - globalUnlock(GLOBALS._lpmmMsgs[i]._hText); - } - } - - f->writeString("</BODY>\n</HTML>\n"); - - f->finalize(); - v1->finalize(); - - delete f; - delete v1; - UnlockMsg(); -} - - -#if 0 // English names -const char *DLG10[] = { "Tony", NULL }; -const char *DLG51[] = { "Tony", "Butch", "Dudley" }; -const char *DLG52[] = { "Tony", NULL }; -const char *DLG61[] = { "Tony", "Old lady 1", NULL }; -const char *DLG71[] = { "Tony", "Timothy", "Convict", NULL, NULL, "Jack (with microphone)", "Old lady 1", NULL }; -const char *DLG90[] = { "Tony", "Bearded lady", NULL }; -const char *DLG110[] = { "Tony", "Lorenz", NULL }; -const char *DLG111[] = { "Tony", "Lorenz", NULL }; -const char *DLG130[] = { "Tony", "Piranha", NULL }; -const char *DLG150[] = { "Tony", "Rufus", "Snowman", NULL }; -const char *DLG151[] = { "Tony", "Rufus", "Snowman", NULL }; -const char *DLG152[] = { "Tony", "Rufus", "Snowman", NULL }; -const char *DLG153[] = { "Tony", "Rufus", "Snowman", NULL }; -const char *DLG154[] = { "Tony", "Rufus", "Snowman", NULL }; -const char *DLG160[] = { "Tony", "Shmiley", NULL }; -const char *DLG161[] = { "Tony", "Shmiley", NULL }; -const char *DLG162[] = { "Tony", "Shmiley", NULL }; -const char *DLG163[] = { "Tony", "Shmiley", NULL }; -const char *DLG180[] = { "Tony", "Beast", NULL }; -const char *DLG190[] = { "Tony", "Beast", NULL }; -const char *DLG191[] = { "Tony", "Beast", NULL }; -const char *DLG201[] = { "Tony", NULL }; -const char *DLG210[] = { "Tony", "Mortimer", NULL }; -const char *DLG211[] = { "Tony", "Mortimer", NULL }; -const char *DLG212[] = { "Tony", "Mortimer", NULL }; -const char *DLG240[] = { "Tony", "Isabella", NULL }; -const char *DLG250[] = { "Tony", "Bartender", "Sad pirate", "Anchorman", "Biff", NULL }; -const char *DLG251[] = { "Tony", "Bartender", "Sad pirate", "Anchorman", "Biff", NULL }; -const char *DLG260[] = { "Tony", "Captain", "Captain (tale)", NULL }; -const char *DLG270[] = { "Tony", "Egghead", NULL }; -const char *DLG271[] = { "Tony", "Egghead", NULL }; -const char *DLG272[] = { "Tony", "Egghead", NULL }; -const char *DLG290[] = { "Tony", "Old lady 2", NULL }; -const char *DLG310[] = { "Tony", "Wally", NULL }; -const char *DLG330[] = { "Tony", "Polly", "Captain (off scene)", NULL }; -const char *DLG340[] = { "Tony", "Randall", NULL }; -const char *DLG360[] = { "Tony", NULL }; -const char *DLG361[] = { "Tony", NULL }; -const char *DLG370[] = { "Tony", "Gatekeeper", NULL }; -const char *DLG371[] = { "Tony", "Gatekeeper", NULL }; -const char *DLG372[] = { "Tony", "Gatekeeper", NULL }; -const char *DLG373[] = { "Tony", "Gatekeeper", NULL }; -const char *DLG380[] = { "Tony", NULL }; -const char *DLG410[] = { "Tony", "Gwendel", NULL }; -const char *DLG430[] = { "Tony", "Harold", "Chuck", "Pigeons", "Housekeeper (off scene)", NULL }; -const char *DLG460[] = { "Tony", NULL }; -const char *DLG470[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG471[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG472[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG473[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG474[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG480[] = { "Tony", "Pin-up", NULL }; -const char *DLG490[] = { "Tony", "Gwendel", NULL }; -const char *DLG530[] = { "Tony", "Harold", "Chuck", NULL }; -const char *DLG550[] = { "Tony", "Mr. Wishing Well", "Tony (from the top of the well)", NULL }; -const char *DLG560[] = { "Tony", "Superintendent", NULL }; -const char *DLG590[] = { "Tony", "Pantagruel", NULL }; -const char *DLG600[] = { "Tony", "Jack", "Jack", NULL, "Jack", NULL, NULL, NULL, "Storyteller", "Mr. Wishing Well", NULL }; -#endif - -#if 0 // Polish names -const char *DLG10[] = { "Tony", NULL }; -const char *DLG51[] = { "Tony", "Butch", "Dudley" }; -const char *DLG52[] = { "Tony", NULL }; -const char *DLG61[] = { "Tony", "Staruszka 1", NULL }; -const char *DLG71[] = { "Tony", "Timothy", "Skazaniec", NULL, NULL, "Јebster (przez mikrofon)", "Staruszka 1", NULL }; -const char *DLG90[] = { "Tony", "Kobieta z Brod№", NULL }; -const char *DLG110[] = { "Tony", "Lorenz", NULL }; -const char *DLG111[] = { "Tony", "Lorenz", NULL }; -const char *DLG130[] = { "Tony", "Pirania", NULL }; -const char *DLG150[] = { "Tony", "Rufus", "Baіwan", NULL }; -const char *DLG151[] = { "Tony", "Rufus", "Baіwan", NULL }; -const char *DLG152[] = { "Tony", "Rufus", "Baіwan", NULL }; -const char *DLG153[] = { "Tony", "Rufus", "Baіwan", NULL }; -const char *DLG154[] = { "Tony", "Rufus", "Baіwan", NULL }; -const char *DLG160[] = { "Tony", "Њmiechozol", NULL }; -const char *DLG161[] = { "Tony", "Њmiechozol", NULL }; -const char *DLG162[] = { "Tony", "Њmiechozol", NULL }; -const char *DLG163[] = { "Tony", "Њmiechozol", NULL }; -const char *DLG180[] = { "Tony", "Wycz", NULL }; -const char *DLG190[] = { "Tony", "Wycz", NULL }; -const char *DLG191[] = { "Tony", "Wycz", NULL }; -const char *DLG201[] = { "Tony", NULL }; -const char *DLG210[] = { "Tony", "Mortimer (Okropny)", NULL }; -const char *DLG211[] = { "Tony", "Mortimer (Okropny)", NULL }; -const char *DLG212[] = { "Tony", "Mortimer (Okropny)", NULL }; -const char *DLG240[] = { "Tony", "Isabella", NULL }; -const char *DLG250[] = { "Tony", "Barman", "Smutny Pirat", "Wodzirej", "Biff", NULL }; -const char *DLG251[] = { "Tony", "Barman", "Smutny Pirat", "Wodzirej", "Biff", NULL }; -const char *DLG260[] = { "Tony", "Kapitan", "Captain (opowieњж)", NULL }; -const char *DLG270[] = { "Tony", "Jajogіowy", NULL }; -const char *DLG271[] = { "Tony", "Jajogіowy", NULL }; -const char *DLG272[] = { "Tony", "Jajogіowy", NULL }; -const char *DLG290[] = { "Tony", "Staruszka 2", NULL }; -const char *DLG310[] = { "Tony", "Wally", NULL }; -const char *DLG330[] = { "Tony", "Polly", "Kapitan (zza sceny)", NULL }; -const char *DLG340[] = { "Tony", "Randall", NULL }; -const char *DLG360[] = { "Tony", NULL }; -const char *DLG361[] = { "Tony", NULL }; -const char *DLG370[] = { "Tony", "Straїnik", NULL }; -const char *DLG371[] = { "Tony", "Straїnik", NULL }; -const char *DLG372[] = { "Tony", "Straїnik", NULL }; -const char *DLG373[] = { "Tony", "Straїnik", NULL }; -const char *DLG380[] = { "Tony", NULL }; -const char *DLG410[] = { "Tony", "Gwendel", NULL }; -const char *DLG430[] = { "Tony", "Harold", "Chuck", "Pigeons", "Gospodyni (zza sceny)", NULL }; -const char *DLG460[] = { "Tony", NULL }; -const char *DLG470[] = { "Tony", "Gospodyni", "Mirror", NULL }; -const char *DLG471[] = { "Tony", "Gospodyni", "Mirror", NULL }; -const char *DLG472[] = { "Tony", "Gospodyni", "Mirror", NULL }; -const char *DLG473[] = { "Tony", "Gospodyni", "Mirror", NULL }; -const char *DLG474[] = { "Tony", "Gospodyni", "Mirror", NULL }; -const char *DLG480[] = { "Tony", "Pin-up", NULL }; -const char *DLG490[] = { "Tony", "Gwendel", NULL }; -const char *DLG530[] = { "Tony", "Harold", "Chuck", NULL }; -const char *DLG550[] = { "Tony", "Pan Studnia Їyczeс", "Tony (nad studni№)", NULL }; -const char *DLG560[] = { "Tony", "Inspektor", NULL }; -const char *DLG590[] = { "Tony", "Pantaloniarz", NULL }; -const char *DLG600[] = { "Tony", "Јebster", "Јebster", NULL, "Јebster", NULL, NULL, NULL, "Narrator", "Pan Studnia Їyczeс", NULL }; -#endif // Polish - - -#if 0 // Russian -const char *DLG10[] = { "Тони", NULL }; -const char *DLG51[] = { "Тони", "Буч", "Дадли" }; -const char *DLG52[] = { "Тони", NULL }; -const char *DLG61[] = { "Тони", "Старушка 1", NULL }; -const char *DLG71[] = { "Тони", "Тимоти", "Осужденный", NULL, NULL, "Джек (с микрофоном)", "Старушка 1", NULL }; -const char *DLG90[] = { "Тони", "Бородатая женщина", NULL }; -const char *DLG110[] = { "Тони", "Лоренц", NULL }; -const char *DLG111[] = { "Тони", "Лоренц", NULL }; -const char *DLG130[] = { "Тони", "Пиранья", NULL }; -const char *DLG150[] = { "Тони", "Руфус", "Снеговик", NULL }; -const char *DLG151[] = { "Тони", "Руфус", "Снеговик", NULL }; -const char *DLG152[] = { "Тони", "Руфус", "Снеговик", NULL }; -const char *DLG153[] = { "Тони", "Руфус", "Снеговик", NULL }; -const char *DLG154[] = { "Тони", "Руфус", "Снеговик", NULL }; -const char *DLG160[] = { "Тони", "Шмайли", NULL }; -const char *DLG161[] = { "Тони", "Шмайли", NULL }; -const char *DLG162[] = { "Тони", "Шмайли", NULL }; -const char *DLG163[] = { "Тони", "Шмайли", NULL }; -const char *DLG180[] = { "Тони", "Чудовище", NULL }; -const char *DLG190[] = { "Тони", "Чудовище", NULL }; -const char *DLG191[] = { "Тони", "Чудовище", NULL }; -const char *DLG201[] = { "Тони", NULL }; -const char *DLG210[] = { "Тони", "Мортимер", NULL }; -const char *DLG211[] = { "Тони", "Мортимер", NULL }; -const char *DLG212[] = { "Тони", "Мортимер", NULL }; -const char *DLG240[] = { "Тони", "Изабелла", NULL }; -const char *DLG250[] = { "Тони", "Бармен", "Грустный пират", "Ведущий", "Бифф", NULL }; -const char *DLG251[] = { "Тони", "Бармен", "Грустный пират", "Ведущий", "Бифф", NULL }; -const char *DLG260[] = { "Тони", "Капитан", "Капитан (рассказ)", NULL }; -const char *DLG270[] = { "Тони", "Яйцеголовый", NULL }; -const char *DLG271[] = { "Тони", "Яйцеголовый", NULL }; -const char *DLG272[] = { "Тони", "Яйцеголовый", NULL }; -const char *DLG290[] = { "Тони", "Старушка 2", NULL }; -const char *DLG310[] = { "Тони", "Уолли", NULL }; -const char *DLG330[] = { "Тони", "Полли", "Капитан (за сценой)", NULL }; -const char *DLG340[] = { "Тони", "Рэндал", NULL }; -const char *DLG360[] = { "Тони", NULL }; -const char *DLG361[] = { "Тони", NULL }; -const char *DLG370[] = { "Тони", "Привратник", NULL }; -const char *DLG371[] = { "Тони", "Привратник", NULL }; -const char *DLG372[] = { "Тони", "Привратник", NULL }; -const char *DLG373[] = { "Тони", "Привратник", NULL }; -const char *DLG380[] = { "Тони", NULL }; -const char *DLG410[] = { "Тони", "Гвендель", NULL }; -const char *DLG430[] = { "Тони", "Гарольд", "Чак", "Pigeons", "Housekeeper (off scene)", NULL }; -const char *DLG460[] = { "Тони", NULL }; -const char *DLG470[] = { "Тони", "Housekeeper", "Mirror", NULL }; -const char *DLG471[] = { "Тони", "Housekeeper", "Mirror", NULL }; -const char *DLG472[] = { "Тони", "Housekeeper", "Mirror", NULL }; -const char *DLG473[] = { "Тони", "Housekeeper", "Mirror", NULL }; -const char *DLG474[] = { "Тони", "Housekeeper", "Mirror", NULL }; -const char *DLG480[] = { "Тони", "Pin-up", NULL }; -const char *DLG490[] = { "Тони", "Гвендель", NULL }; -const char *DLG530[] = { "Тони", "Гарольд", "Чак", NULL }; -const char *DLG550[] = { "Тони", "Господин Колодец желаний", "Тони (с вершины колодца)", NULL }; -const char *DLG560[] = { "Тони", "Начальник охраны", NULL }; -const char *DLG590[] = { "Тони", "Пантагрюэль", NULL }; -const char *DLG600[] = { "Тони", "Джек", "Джек", NULL, "Джек", NULL, NULL, NULL, "Рассказчик", "Господин Колодец желаний", NULL }; -#endif // Russian - - -#if 0 // Czech names -const char *DLG10[] = { "Tony", NULL }; -const char *DLG51[] = { "Tony", "Butch", "Dudley" }; -const char *DLG52[] = { "Tony", NULL }; -const char *DLG61[] = { "Tony", "Starб panн 1", NULL }; -const char *DLG71[] = { "Tony", "Timothy", "Trestanec", NULL, NULL, "Jack (s mikrofonem)", "Starб panн 1", NULL }; -const char *DLG90[] = { "Tony", "Vousatб ћena", NULL }; -const char *DLG110[] = { "Tony", "Lorenz", NULL }; -const char *DLG111[] = { "Tony", "Lorenz", NULL }; -const char *DLG130[] = { "Tony", "Piraтa", NULL }; -const char *DLG150[] = { "Tony", "Rufus", "Snмhulбk", NULL }; -const char *DLG151[] = { "Tony", "Rufus", "Snмhulбk", NULL }; -const char *DLG152[] = { "Tony", "Rufus", "Snмhulбk", NULL }; -const char *DLG153[] = { "Tony", "Rufus", "Snмhulбk", NULL }; -const char *DLG154[] = { "Tony", "Rufus", "Snмhulбk", NULL }; -const char *DLG160[] = { "Tony", "Shmiley", NULL }; -const char *DLG161[] = { "Tony", "Shmiley", NULL }; -const char *DLG162[] = { "Tony", "Shmiley", NULL }; -const char *DLG163[] = { "Tony", "Shmiley", NULL }; -const char *DLG180[] = { "Tony", "Zvншe", NULL }; -const char *DLG190[] = { "Tony", "Zvншe", NULL }; -const char *DLG191[] = { "Tony", "Zvншe", NULL }; -const char *DLG201[] = { "Tony", NULL }; -const char *DLG210[] = { "Tony", "Mortimer", NULL }; -const char *DLG211[] = { "Tony", "Mortimer", NULL }; -const char *DLG212[] = { "Tony", "Mortimer", NULL }; -const char *DLG240[] = { "Tony", "Isabella", NULL }; -const char *DLG250[] = { "Tony", "Barman", "Smutnэ pirбt", "Moderбtor", "Biff", NULL }; -const char *DLG251[] = { "Tony", "Barman", "Smutnэ pirбt", "Moderбtor", "Biff", NULL }; -const char *DLG260[] = { "Tony", "Kapitбn", "Kapitбn (pшнbмh)", NULL }; -const char *DLG270[] = { "Tony", "Intelektuбl", NULL }; -const char *DLG271[] = { "Tony", "Intelektuбl", NULL }; -const char *DLG272[] = { "Tony", "Intelektuбl", NULL }; -const char *DLG290[] = { "Tony", "Starб panн 2", NULL }; -const char *DLG310[] = { "Tony", "Wally", NULL }; -const char *DLG330[] = { "Tony", "Lуra", "Kapitбn (mimo scйnu)", NULL }; -const char *DLG340[] = { "Tony", "Randall", NULL }; -const char *DLG360[] = { "Tony", NULL }; -const char *DLG361[] = { "Tony", NULL }; -const char *DLG370[] = { "Tony", "Strбћnэ", NULL }; -const char *DLG371[] = { "Tony", "Strбћnэ", NULL }; -const char *DLG372[] = { "Tony", "Strбћnэ", NULL }; -const char *DLG373[] = { "Tony", "Strбћnэ", NULL }; -const char *DLG380[] = { "Tony", NULL }; -const char *DLG410[] = { "Tony", "Gwendel", NULL }; -const char *DLG430[] = { "Tony", "Harold", "Chuck", "Pigeons", "Housekeeper (off scene)", NULL }; -const char *DLG460[] = { "Tony", NULL }; -const char *DLG470[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG471[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG472[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG473[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG474[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG480[] = { "Tony", "Pin-up", NULL }; -const char *DLG490[] = { "Tony", "Gwendel", NULL }; -const char *DLG530[] = { "Tony", "Harold", "Chuck", NULL }; -const char *DLG550[] = { "Tony", "Pan Studna pшбnн", "Tony (z vrcholu studny)", NULL }; -const char *DLG560[] = { "Tony", "Sprбvce", NULL }; -const char *DLG590[] = { "Tony", "Pantagruel", NULL }; -const char *DLG600[] = { "Tony", "Jack", "Jack", NULL, "Jack", NULL, NULL, NULL, "Vypravми", "Pan Studna pшбnн", NULL }; -#endif // Czech names - -#if 1 // Deutsch names -const char *DLG10[] = { "Tony", NULL }; -const char *DLG51[] = { "Tony", "Butch", "Dudley" }; -const char *DLG52[] = { "Tony", NULL }; -const char *DLG61[] = { "Tony", "Alte Dame 1", NULL }; -const char *DLG71[] = { "Tony", "Timothy", "Strдfling", NULL, NULL, "Jack (mit Mikrofon)", "Alte Dame 1", NULL }; -const char *DLG90[] = { "Tony", "Bдrtige Dame", NULL }; -const char *DLG110[] = { "Tony", "Lorenz", NULL }; -const char *DLG111[] = { "Tony", "Lorenz", NULL }; -const char *DLG130[] = { "Tony", "Piranha", NULL }; -const char *DLG150[] = { "Tony", "Rufus", "Schneemann", NULL }; -const char *DLG151[] = { "Tony", "Rufus", "Schneemann", NULL }; -const char *DLG152[] = { "Tony", "Rufus", "Schneemann", NULL }; -const char *DLG153[] = { "Tony", "Rufus", "Schneemann", NULL }; -const char *DLG154[] = { "Tony", "Rufus", "Schneemann", NULL }; -const char *DLG160[] = { "Tony", "Shmiley", NULL }; -const char *DLG161[] = { "Tony", "Shmiley", NULL }; -const char *DLG162[] = { "Tony", "Shmiley", NULL }; -const char *DLG163[] = { "Tony", "Shmiley", NULL }; -const char *DLG180[] = { "Tony", "Biest", NULL }; -const char *DLG190[] = { "Tony", "Biest", NULL }; -const char *DLG191[] = { "Tony", "Biest", NULL }; -const char *DLG201[] = { "Tony", NULL }; -const char *DLG210[] = { "Tony", "Mortimer", NULL }; -const char *DLG211[] = { "Tony", "Mortimer", NULL }; -const char *DLG212[] = { "Tony", "Mortimer", NULL }; -const char *DLG240[] = { "Tony", "Isabella", NULL }; -const char *DLG250[] = { "Tony", "Barmann", "Trauriger Pirat", "Chefanimateur", "Biff", NULL }; -const char *DLG251[] = { "Tony", "Barmann", "Trauriger Pirat", "Chefanimateur", "Biff", NULL }; -const char *DLG260[] = { "Tony", "Kapitдn", "Kapitдn (Erzдhlung)", NULL }; -const char *DLG270[] = { "Tony", "Eierkopf", NULL }; -const char *DLG271[] = { "Tony", "Eierkopf", NULL }; -const char *DLG272[] = { "Tony", "Eierkopf", NULL }; -const char *DLG290[] = { "Tony", "Alte Dame 2", NULL }; -const char *DLG310[] = { "Tony", "Wally", NULL }; -const char *DLG330[] = { "Tony", "Polly", "Kapitдn (im Off)", NULL }; -const char *DLG340[] = { "Tony", "Randall", NULL }; -const char *DLG360[] = { "Tony", NULL }; -const char *DLG361[] = { "Tony", NULL }; -const char *DLG370[] = { "Tony", "Pfцrtner", NULL }; -const char *DLG371[] = { "Tony", "Pfцrtner", NULL }; -const char *DLG372[] = { "Tony", "Pfцrtner", NULL }; -const char *DLG373[] = { "Tony", "Pfцrtner", NULL }; -const char *DLG380[] = { "Tony", NULL }; -const char *DLG410[] = { "Tony", "Gwendel", NULL }; -const char *DLG430[] = { "Tony", "Harold", "Chuck", "Pigeons", "Housekeeper (off scene)", NULL }; -const char *DLG460[] = { "Tony", NULL }; -const char *DLG470[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG471[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG472[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG473[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG474[] = { "Tony", "Housekeeper", "Mirror", NULL }; -const char *DLG480[] = { "Tony", "Pin-up", NULL }; -const char *DLG490[] = { "Tony", "Gwendel", NULL }; -const char *DLG530[] = { "Tony", "Harold", "Chuck", NULL }; -const char *DLG550[] = { "Tony", "Herr Wunschbrunnen", "Tony (ьber dem Brunnen)", NULL }; -const char *DLG560[] = { "Tony", "Verwalter", NULL }; -const char *DLG590[] = { "Tony", "Pantagruel", NULL }; -const char *DLG600[] = { "Tony", "Jack", "Jack", NULL, "Jack", NULL, NULL, NULL, "Erzдhler", "Herr Wunschbrunnen", NULL }; -#endif - - -#define HANDLE_DIALOG(num) \ -case num: \ - if (nPers >= (int)(sizeof(DLG##num) / sizeof(const char *)) || DLG##num[nPers] == NULL) \ - { \ - warning("ERROR: The character #%d does not exist in dialog %d!\n", nPers, nDlg); \ - return "ERROR"; \ - } \ - else \ - return DLG##num[nPers]; - - -const char *getPersonName(uint16 nDlg, int nPers) { - switch (nDlg) { - HANDLE_DIALOG(10); - HANDLE_DIALOG(51); - HANDLE_DIALOG(52); - HANDLE_DIALOG(61); - HANDLE_DIALOG(71); - HANDLE_DIALOG(90); - HANDLE_DIALOG(110); - HANDLE_DIALOG(111); - HANDLE_DIALOG(130); - HANDLE_DIALOG(150); - HANDLE_DIALOG(151); - HANDLE_DIALOG(152); - HANDLE_DIALOG(153); - HANDLE_DIALOG(154); - HANDLE_DIALOG(160); - HANDLE_DIALOG(161); - HANDLE_DIALOG(162); - HANDLE_DIALOG(163); - HANDLE_DIALOG(180); - HANDLE_DIALOG(190); - HANDLE_DIALOG(191); - HANDLE_DIALOG(201); - HANDLE_DIALOG(210); - HANDLE_DIALOG(211); - HANDLE_DIALOG(212); - HANDLE_DIALOG(240); - HANDLE_DIALOG(250); - HANDLE_DIALOG(251); - HANDLE_DIALOG(260); - HANDLE_DIALOG(270); - HANDLE_DIALOG(271); - HANDLE_DIALOG(272); - HANDLE_DIALOG(290); - HANDLE_DIALOG(310); - HANDLE_DIALOG(330); - HANDLE_DIALOG(340); - HANDLE_DIALOG(360); - HANDLE_DIALOG(361); - HANDLE_DIALOG(370); - HANDLE_DIALOG(371); - HANDLE_DIALOG(372); - HANDLE_DIALOG(373); - HANDLE_DIALOG(380); - HANDLE_DIALOG(410); - HANDLE_DIALOG(430); - HANDLE_DIALOG(460); - HANDLE_DIALOG(470); - HANDLE_DIALOG(471); - HANDLE_DIALOG(472); - HANDLE_DIALOG(473); - HANDLE_DIALOG(474); - HANDLE_DIALOG(480); - HANDLE_DIALOG(490); - HANDLE_DIALOG(530); - HANDLE_DIALOG(550); - HANDLE_DIALOG(560); - HANDLE_DIALOG(590); - HANDLE_DIALOG(600); - - default: - warning("ERROR: Dialog %d does not exist!", (int)nDlg); - return "ERROR"; - } -} - -void mpalDumpDialog(LPMPALDIALOG dlg) { - char dfn[64]; - char fname[64]; - int g,c,j; - struct command* curCmd; - char *frase; char *p; - char copia[2048]; - bool bAtLeastOne; - Common::OutSaveFile *f, *v1; - - v1 = g_system->getSavefileManager()->openForSaving("voicelist.txt"); - - sprintf(dfn,"DIALOG%03d.HTM", dlg->nObj); - warning("Dumping %s...\n", dfn); - - f = g_system->getSavefileManager()->openForSaving(dfn); - - f->writeString("<HTML>\n<BODY>\n"); - - for (g = 0; dlg->_group[g].num != 0; g++) { - bAtLeastOne = false; - - for (c = 0; c<dlg->_group[g].nCmds; c++) { - curCmd = &dlg->_command[dlg->_group[g].CmdNum[c]]; - if (curCmd->type == 1 && curCmd->_nCf == 71) { - bAtLeastOne = true; - break; - } - } - - if (!bAtLeastOne) - continue; - - f->writeString(Common::String::format("<P>\n<H3>Group %d</H3>\n<P>\n", g)); - f->writeString("<TABLE WIDTH = 100%% BORDER = 1>\n"); - - for (c = 0; c < dlg->_group[g].nCmds; c++) { - curCmd = &dlg->_command[dlg->_group[g].CmdNum[c]]; - - // If it's a custom function, call SendDialogMessage(nPers, nMsg) - if (curCmd->type == 1 && curCmd->_nCf == 71) { - sprintf(fname, "%03d-%05d.WAV", dlg->nObj, curCmd->_arg2); - - for (j = 0; dlg->_periods[j] != NULL; j++) - if (dlg->_periodNums[j] == curCmd->_arg2) - break; - - if (dlg->_periods[j] == NULL) - warning("ERROR: Dialog %d, Period %d not found!", (int)dlg->nObj, (int)curCmd->_arg2); - else { - frase = (char *)globalLock(dlg->_periods[j]); - strcpy(copia, frase); - globalUnlock(dlg->_periods[j]); - - while ((p = strchr(copia,'^')) != NULL) - *p = '\"'; - - p = frase; - while (*p == ' ') - p++; - if (*p == '\0') - continue; - - v1->writeString(Common::String::format("%s\n", fname)); - f->writeString("\t<TR>\n"); - f->writeString(Common::String::format("\t\t<TD WIDTH=20%%> %s </TD>\n", fname)); - f->writeString(Common::String::format("\t\t<TD WIDTH = 13%%> <B> %s </B> </TD>\n", - getPersonName(dlg->nObj, curCmd->_arg1))); - f->writeString(Common::String::format("\t\t<TD> %s </TD>\n",copia)); - f->writeString("\t</TR>\n"); - //fprintf(f, "(%s) <%s> %s\n", fname, GetPersonName(dlg->nObj, curCmd->arg1), copia); - } - } - } - - f->writeString("</TABLE><P>\n"); - //fprintf(f,"\n\n\n\n"); - } - - f->finalize(); - v1->finalize(); - delete f; - delete v1; -} - -void mpalDumpDialogs() { - int i; - - lockDialogs(); - - for (i = 0; i < GLOBALS._nDialogs; i++) - mpalDumpDialog(&GLOBALS._lpmdDialogs[i]); - - unlockDialogs(); -} - } // end of namespace MPAL } // end of namespace Tony |