GOB: yet more int16->uint16 changes, to accommodate for Playtoons/Adibou2 larger variable space

This makes the Playtoons-like minigame in Adibou2 playable (with glitches).
This commit is contained in:
Simon Delamarre 2022-10-29 00:43:39 +02:00 committed by Eugene Sandulenko
parent 962e9f9386
commit 97a66c329e
No known key found for this signature in database
GPG key ID: 014D387312D34F08
8 changed files with 15 additions and 15 deletions

View file

@ -575,7 +575,7 @@ bool Expression::getVarBase(uint32 &varBase, bool mindStop,
return false; return false;
} }
int16 Expression::parseVarIndex(uint16 *size, uint16 *type) { uint16 Expression::parseVarIndex(uint16 *size, uint16 *type) {
int16 temp2; int16 temp2;
byte *arrDesc; byte *arrDesc;
int16 dim; int16 dim;

View file

@ -114,7 +114,7 @@ public:
void printExpr(char stopToken); void printExpr(char stopToken);
void printVarIndex(); void printVarIndex();
int16 parseVarIndex(uint16 *size = 0, uint16 *type = 0); uint16 parseVarIndex(uint16 *size = 0, uint16 *type = 0);
int16 parseValExpr(byte stopToken = 99); int16 parseValExpr(byte stopToken = 99);
int16 parseExpr(byte stopToken, byte *type); int16 parseExpr(byte stopToken, byte *type);

View file

@ -616,7 +616,7 @@ void Inter_v2::o2_pushVars() {
void Inter_v2::o2_popVars() { void Inter_v2::o2_popVars() {
uint8 count = _vm->_game->_script->readByte(); uint8 count = _vm->_game->_script->readByte();
for (int i = 0; i < count; i++) { for (int i = 0; i < count; i++) {
int16 varOff = _vm->_game->_script->readVarIndex(); uint16 varOff = _vm->_game->_script->readVarIndex();
_varStack.pop(*_variables, varOff); _varStack.pop(*_variables, varOff);
} }
@ -977,11 +977,11 @@ void Inter_v2::o2_playImd() {
void Inter_v2::o2_getImdInfo() { void Inter_v2::o2_getImdInfo() {
Common::String imd = _vm->_game->_script->evalString(); Common::String imd = _vm->_game->_script->evalString();
int16 varX = _vm->_game->_script->readVarIndex(); uint16 varX = _vm->_game->_script->readVarIndex();
int16 varY = _vm->_game->_script->readVarIndex(); uint16 varY = _vm->_game->_script->readVarIndex();
int16 varFrames = _vm->_game->_script->readVarIndex(); uint16 varFrames = _vm->_game->_script->readVarIndex();
int16 varWidth = _vm->_game->_script->readVarIndex(); uint16 varWidth = _vm->_game->_script->readVarIndex();
int16 varHeight = _vm->_game->_script->readVarIndex(); uint16 varHeight = _vm->_game->_script->readVarIndex();
// WORKAROUND: The nut rolling animation in the administration center // WORKAROUND: The nut rolling animation in the administration center
// in Woodruff is called "noixroul", but the scripts think it's "noixroule". // in Woodruff is called "noixroul", but the scripts think it's "noixroule".

View file

@ -214,7 +214,7 @@ void Inter_v5::o5_initScreen() {
} }
void Inter_v5::o5_istrlen(OpFuncParams &params) { void Inter_v5::o5_istrlen(OpFuncParams &params) {
int16 strVar1, strVar2; uint16 strVar1, strVar2;
int16 len; int16 len;
uint16 type; uint16 type;

View file

@ -261,7 +261,7 @@ char *Script::peekString(int32 offset) {
return (char *)(_totPtr + offset); return (char *)(_totPtr + offset);
} }
int16 Script::readVarIndex(uint16 *size, uint16 *type) { uint16 Script::readVarIndex(uint16 *size, uint16 *type) {
return _expression->parseVarIndex(size, type); return _expression->parseVarIndex(size, type);
} }

View file

@ -74,7 +74,7 @@ public:
char *peekString(int32 offset = 0); char *peekString(int32 offset = 0);
// Expression parsing functions // Expression parsing functions
int16 readVarIndex(uint16 *size = 0, uint16 *type = 0); uint16 readVarIndex(uint16 *size = 0, uint16 *type = 0);
int16 readValExpr(byte stopToken = 99); int16 readValExpr(byte stopToken = 99);
int16 readExpr(byte stopToken, byte *type); int16 readExpr(byte stopToken, byte *type);
void skipExpr(char stopToken); void skipExpr(char stopToken);

View file

@ -694,8 +694,8 @@ int32 VideoPlayer::getSubtitleIndex(int slot) const {
return video->decoder->getSubtitleIndex(); return video->decoder->getSubtitleIndex();
} }
void VideoPlayer::writeVideoInfo(const Common::String &file, int16 varX, int16 varY, void VideoPlayer::writeVideoInfo(const Common::String &file, uint16 varX, uint16 varY,
int16 varFrames, int16 varWidth, int16 varHeight) { uint16 varFrames, uint16 varWidth, uint16 varHeight) {
Properties properties; Properties properties;

View file

@ -148,8 +148,8 @@ public:
int32 getSubtitleIndex(int slot = 0) const; int32 getSubtitleIndex(int slot = 0) const;
void writeVideoInfo(const Common::String &file, int16 varX, int16 varY, void writeVideoInfo(const Common::String &file, uint16 varX, uint16 varY,
int16 varFrames, int16 varWidth, int16 varHeight); uint16 varFrames, uint16 varWidth, uint16 varHeight);
bool copyFrame(int slot, Surface &dest, bool copyFrame(int slot, Surface &dest,
uint16 left, uint16 top, uint16 width, uint16 height, uint16 x, uint16 y, uint16 left, uint16 top, uint16 width, uint16 height, uint16 x, uint16 y,