Ticket #8782: hofStartupFix.patch
File hofStartupFix.patch, 3.9 KB (added by , 16 years ago) |
---|
-
kyra.cpp
162 162 _lang = 2; 163 163 break; 164 164 165 case Common::JA_JPN: 166 _lang = 3; 167 break; 168 165 169 default: 166 170 warning("unsupported language, switching back to English"); 167 171 _lang = 0; -
kyra_v2.cpp
212 212 _screen->setMouseCursor(0, 0, getShapePtr(0)); 213 213 214 214 _screenBuffer = new uint8[64000]; 215 _unkBuf200kByte = new uint8[200000]; 215 216 216 loadCCodeBuffer("C_CODE.XXX"); 217 loadOptionsBuffer("OPTIONS.XXX"); 218 loadChapterBuffer(_newChapterFile); 217 loadChapterBuffer(_newChapterFile); 219 218 220 _unkBuf200kByte = new uint8[200000]; 219 if (_flags.isTalkie) { 220 loadCCodeBuffer("C_CODE.XXX"); 221 loadOptionsBuffer("OPTIONS.XXX"); 221 222 222 showMessageFromCCode(265, 150, 0); 223 showMessageFromCCode(265, 150, 0); 224 openTalkFile(0); 225 _currentTalkFile = 1; 226 openTalkFile(1); 227 } 223 228 224 openTalkFile(0);225 _currentTalkFile = 1;226 openTalkFile(1);227 228 229 showMessage(0, 207); 229 230 230 231 _screen->setShapePages(5, 3); … … 345 346 346 347 int inputFlag = checkInput(0/*dword_324C5*/); 347 348 removeInputTop(); 349 if (_flags.useHiResOverlay) { 350 _mouseX >>= 1; 351 _mouseY >>= 1; 352 } 348 353 349 354 update(); 350 355 … … 805 810 const char *KyraEngine_v2::getTableString(int id, const uint8 *buffer, int decode) { 806 811 const char *string = (const char*)getTableEntry(buffer, id); 807 812 808 if (decode ) {813 if (decode && _flags.lang != Common::JA_JPN) { 809 814 decodeString1(string, _internStringBuf); 810 815 decodeString2(_internStringBuf, _internStringBuf); 811 816 string = _internStringBuf; … … 1012 1017 char filename[12]; 1013 1018 strcpy(filename, "_NPC.EMC"); 1014 1019 1015 switch (_lang) { 1016 case 0: 1017 filename[5] = 'E'; 1018 break; 1020 if (!(_flags.platform == Common::kPlatformPC && !_flags.isTalkie)) { 1021 switch (_lang) { 1022 case 0: 1023 filename[5] = 'E'; 1024 break; 1019 1025 1020 case 1:1021 filename[5] = 'F';1022 break;1026 case 1: 1027 filename[5] = 'F'; 1028 break; 1023 1029 1024 case 2:1025 filename[5] = 'G';1026 break;1030 case 2: 1031 filename[5] = 'G'; 1032 break; 1027 1033 1028 default:1029 break;1030 };1034 case 3: 1035 filename[5] = 'J'; 1036 break; 1031 1037 1038 default: 1039 break; 1040 }; 1041 } 1042 1032 1043 _scriptInterpreter->loadScript(filename, &_npcScriptData, &_opcodes); 1033 1044 } 1034 1045 -
scene_v2.cpp
35 35 void KyraEngine_v2::enterNewScene(uint16 newScene, int facing, int unk1, int unk2, int unk3) { 36 36 if (_newChapterFile != _currentTalkFile) { 37 37 _currentTalkFile = _newChapterFile; 38 showMessageFromCCode(265, 150, 0); 39 _screen->updateScreen(); 40 openTalkFile(_currentTalkFile); 38 if (_flags.isTalkie) { 39 showMessageFromCCode(265, 150, 0); 40 _screen->updateScreen(); 41 openTalkFile(_currentTalkFile); 42 } 41 43 showMessage(0, 207); 42 44 _screen->updateScreen(); 43 45 } … … 425 427 426 428 strcpy(filename, _sceneList[sceneId].filename); 427 429 strcat(filename, "."); 428 strcat(filename, _scriptLangExt[ _lang]);430 strcat(filename, _scriptLangExt[(_flags.platform == Common::kPlatformPC && !_flags.isTalkie) ? 0 : _lang]); 429 431 430 432 assert(_res->getFileSize(filename)); 431 433 _scriptInterpreter->loadScript(filename, &_sceneScriptData, &_opcodes); -
staticres.cpp
1340 1340 const char *KyraEngine_v2::_languageExtension[] = { 1341 1341 "ENG", 1342 1342 "FRE", 1343 "GER" /*,1343 "GER",/*, 1344 1344 "ITA", Italian and Spanish was never included 1345 1345 "SPA"*/ 1346 "JPN" 1346 1347 }; 1347 1348 1348 1349 const char *KyraEngine_v2::_scriptLangExt[] = { 1349 1350 "EMC", 1350 1351 "FMC", 1351 "GMC" /*,1352 "GMC",/*, 1352 1353 "IMC", Italian and Spanish was never included 1353 1354 "SMC"*/ 1355 "JMC" 1354 1356 }; 1355 1357 1356 1358 const int KyraEngine_v2::_characterFrameTable[] = {