DIRECTOR: LINGO: Properly implement the romanLingo

This commit is contained in:
Eugene Sandulenko 2022-05-24 00:54:04 +02:00
parent 520018817a
commit 3eb2cf61e4
No known key found for this signature in database
GPG Key ID: 014D387312D34F08
3 changed files with 6 additions and 1 deletions

View File

@ -750,7 +750,8 @@ Datum Lingo::getTheEntity(int entity, Datum &id, int field) {
break;
case kTheRomanLingo:
d.type = INT;
d.u.i = 0; //Set to FALSE to support non-roman character set in Lingo
d.u.i = g_lingo->_romanLingo;
warning("BUILDBOT: the romanLingo is get, value is %d", g_lingo->_romanLingo);
break;
case kTheScummvmVersion:
d.type = INT;
@ -1032,6 +1033,8 @@ void Lingo::setTheEntity(int entity, Datum &id, int field, Datum &d) {
g_director->_rnd.setSeed(d.asInt());
break;
case kTheRomanLingo:
g_lingo->_romanLingo = bool(d.asInt());
warning("BUILDBOT: the romanLingo is set to %d", g_lingo->_romanLingo);
setTheEntitySTUB(kTheRomanLingo);
break;
case kTheScummvmVersion:

View File

@ -168,6 +168,7 @@ Lingo::Lingo(DirectorEngine *vm) : _vm(vm) {
_itemDelimiter = ',';
_exitLock = false;
_preLoadEventAbort = false;
_romanLingo = (_vm->getLanguage() != Common::JA_JPN); // Japanrdr gamrs typically require 3-byte encodings
_searchPath.type = ARRAY;
_searchPath.u.farr = new FArray;

View File

@ -386,6 +386,7 @@ public:
bool _trace; // state of movie's trace function
int _traceLoad; // internal Director verbosity level
bool _updateMovieEnabled;
bool _romanLingo;
Datum getTheEntity(int entity, Datum &id, int field);
void setTheEntity(int entity, Datum &id, int field, Datum &d);