aboutsummaryrefslogtreecommitdiff
path: root/engines/tucker/resource.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/tucker/resource.cpp')
-rw-r--r--engines/tucker/resource.cpp34
1 files changed, 27 insertions, 7 deletions
diff --git a/engines/tucker/resource.cpp b/engines/tucker/resource.cpp
index f816ee3d2c..38141d452a 100644
--- a/engines/tucker/resource.cpp
+++ b/engines/tucker/resource.cpp
@@ -162,6 +162,25 @@ public:
};
uint8 *TuckerEngine::loadFile(uint8 *p) {
+ if (_gameVer.lang == Common::DE_DEU) {
+ if (strcmp(_fileToLoad, "bgtext.c") == 0) {
+ strcpy(_fileToLoad, "bgtextgr.c");
+ } else if (strcmp(_fileToLoad, "charname.c") == 0) {
+ strcpy(_fileToLoad, "charnmgr.c");
+ } else if (strcmp(_fileToLoad, "data5.c") == 0) {
+ strcpy(_fileToLoad, "data5gr.c");
+ } else if (strcmp(_fileToLoad, "infobar.txt") == 0) {
+ strcpy(_fileToLoad, "infobrgr.txt");
+ } else if (strcmp(_fileToLoad, "charsize.dta") == 0) {
+ strcpy(_fileToLoad, "charszgr.dta");
+ } else if (strncmp(_fileToLoad, "objtxt", 6) == 0) {
+ const int num = _fileToLoad[6];
+ snprintf(_fileToLoad, sizeof(_fileToLoad), "objtx%dgr.c", num);
+ } else if (strncmp(_fileToLoad, "pt", 2) == 0) {
+ const int num = _fileToLoad[2];
+ snprintf(_fileToLoad, sizeof(_fileToLoad), "pt%dtxtgr.c", num);
+ }
+ }
_fileLoadSize = 0;
bool decode = false;
if (_useEnc) {
@@ -270,7 +289,7 @@ void TuckerEngine::loadCharset() {
loadImage(_loadTempBuf, 0);
switch (_gameVer.lang) {
case Common::FR_FRA:
- case Common::GR_GRE:
+ case Common::DE_DEU:
Graphics::setCharset(kCharsetTypeFrGr);
break;
default:
@@ -507,12 +526,13 @@ void TuckerEngine::loadData() {
}
const int x = t.getNextInteger();
const int y = t.getNextInteger();
- _dataTable[_dataCount].sourceOffset = y * 320 + x;
- _dataTable[_dataCount].xSize = t.getNextInteger();
- _dataTable[_dataCount].ySize = t.getNextInteger();
- _dataTable[_dataCount].xDest = t.getNextInteger();
- _dataTable[_dataCount].yDest = t.getNextInteger();
- _dataTable[_dataCount].index = count;
+ Data *d = &_dataTable[_dataCount];
+ d->sourceOffset = y * 320 + x;
+ d->xSize = t.getNextInteger();
+ d->ySize = t.getNextInteger();
+ d->xDest = t.getNextInteger();
+ d->yDest = t.getNextInteger();
+ d->index = count;
}
if (flag < 2) {
++objNum;