diff --git a/.gitignore b/.gitignore index ab28e83b..2d704fd6 100644 --- a/.gitignore +++ b/.gitignore @@ -7,16 +7,21 @@ /.gdb_history /construct_mohawk +/create_macs2_translation /create_sjisfnt +/create_twine_translation /decine /decompile /degob /dekyra +/demacs2 /deprince /descumm /desword2 /detwine +/extract_twine /extract_hadesch_img +/extract_macs2 /extract_mohawk /extract_mps /extract_gob_cdi diff --git a/Makefile.common b/Makefile.common index 9fa390f1..84064c65 100644 --- a/Makefile.common +++ b/Makefile.common @@ -31,11 +31,13 @@ PROGRAMS = \ descumm \ desword2 \ detwine \ + extract_twine \ gob_loadcalc \ extract_gob_cdi \ extract_mohawk \ extract_macs2 \ create_macs2_translation \ + create_twine_translation \ extract_ngi \ construct_mohawk \ msn_convert_mod \ @@ -149,6 +151,11 @@ extract_macs2_OBJS := \ create_macs2_translation_OBJS := \ engines/macs2/create_macs2_translation.o +create_twine_translation_OBJS := \ + engines/twine/create_twine_translation.o \ + engines/twine/hqr.o \ + $(UTILS) + extract_hadesch_OBJS := \ engines/hadesch/extract_hadesch.o \ $(UTILS) @@ -232,6 +239,17 @@ detwine_OBJS := \ version.o \ $(UTILS) +extract_twine_OBJS := \ + engines/twine/extract_twine.o \ + engines/twine/extract_twine_convert.o \ + engines/twine/extract_twine_font.o \ + engines/twine/extract_twine_island.o \ + engines/twine/extract_twine_obj.o \ + engines/twine/parser/body.o \ + engines/twine/hqr.o \ + $(UTILS) +extract_twine_LIBS := $(LIBS) + gob_loadcalc_OBJS := \ engines/gob/gob_loadcalc.o diff --git a/dists/win32/ScummVM Tools.iss b/dists/win32/ScummVM Tools.iss index cfdf029e..2aa0dd3a 100755 --- a/dists/win32/ScummVM Tools.iss +++ b/dists/win32/ScummVM Tools.iss @@ -35,6 +35,7 @@ Source: "deprince.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "descumm.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "desword2.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "detwine.exe"; DestDir: "{app}"; Flags: ignoreversion +Source: "extract_twine.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "extract_gob_cdi.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "extract_hadesch.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "extract_hadesch_img.exe"; DestDir: "{app}"; Flags: ignoreversion diff --git a/engines/twine/create_twine_translation.cpp b/engines/twine/create_twine_translation.cpp new file mode 100644 index 00000000..7e59af5b --- /dev/null +++ b/engines/twine/create_twine_translation.cpp @@ -0,0 +1,731 @@ +/* ScummVM Tools + * + * ScummVM Tools is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +/** + * LBA (TwinE) TEXT.HQR translation tool + * + * Workflow: + * 1. Extract: create_twine_translation extract [--lang N] [--lba1|--lba2] + * 2. Translate the .po file (Poedit, Weblate, etc.) + * 3. Pack: create_twine_translation pack