mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-03 17:33:05 +00:00
Fix regressions, due to zoneNum changes.
svn-id: r27579
This commit is contained in:
parent
64cafa0270
commit
d2e7058b59
@ -1213,7 +1213,7 @@ protected:
|
||||
void fastFadeIn();
|
||||
void slowFadeIn();
|
||||
|
||||
virtual void vcStopAnimation(uint zone, uint sprite);
|
||||
virtual void vcStopAnimation(uint16 zone, uint16 sprite);
|
||||
|
||||
bool confirmOverWrite(WindowBlock *window);
|
||||
int16 matchSaveGame(const char *name, uint16 max);
|
||||
@ -1499,7 +1499,7 @@ protected:
|
||||
|
||||
virtual void playMusic(uint16 music, uint16 track);
|
||||
|
||||
virtual void vcStopAnimation(uint zone, uint sprite);
|
||||
virtual void vcStopAnimation(uint16 zone, uint16 sprite);
|
||||
};
|
||||
|
||||
class AGOSEngine_Simon2 : public AGOSEngine_Simon1 {
|
||||
|
@ -45,15 +45,17 @@ void AGOSEngine_Waxworks::setupVideoOpcodes(VgaOpcodeProc *op) {
|
||||
op[63] = &AGOSEngine::vc63_fastFadeIn;
|
||||
}
|
||||
|
||||
void AGOSEngine::vcStopAnimation(uint zone, uint sprite) {
|
||||
uint16 old_sprite_id;
|
||||
void AGOSEngine::vcStopAnimation(uint16 zone, uint16 sprite) {
|
||||
uint16 oldCurSpriteId, oldCurZoneNum;
|
||||
VgaSprite *vsp;
|
||||
VgaTimerEntry *vte;
|
||||
const byte *vcPtrOrg;
|
||||
|
||||
old_sprite_id = _vgaCurSpriteId;
|
||||
oldCurSpriteId = _vgaCurSpriteId;
|
||||
oldCurZoneNum = _vgaCurZoneNum;
|
||||
vcPtrOrg = _vcPtr;
|
||||
|
||||
_vgaCurZoneNum = zone;
|
||||
_vgaCurSpriteId = sprite;
|
||||
|
||||
vsp = findCurSprite();
|
||||
@ -62,7 +64,7 @@ void AGOSEngine::vcStopAnimation(uint zone, uint sprite) {
|
||||
|
||||
vte = _vgaTimerList;
|
||||
while (vte->delay) {
|
||||
if (vte->sprite_id == _vgaCurSpriteId) {
|
||||
if (vte->sprite_id == _vgaCurSpriteId && vte->cur_vga_file == _vgaCurZoneNum) {
|
||||
deleteVgaEvent(vte);
|
||||
break;
|
||||
}
|
||||
@ -70,19 +72,20 @@ void AGOSEngine::vcStopAnimation(uint zone, uint sprite) {
|
||||
}
|
||||
}
|
||||
|
||||
_vgaCurSpriteId = old_sprite_id;
|
||||
_vgaCurZoneNum = oldCurZoneNum;
|
||||
_vgaCurSpriteId = oldCurSpriteId;
|
||||
_vcPtr = vcPtrOrg;
|
||||
}
|
||||
|
||||
void AGOSEngine_Simon1::vcStopAnimation(uint zone, uint sprite) {
|
||||
uint16 old_sprite_id, old_cur_file_id;
|
||||
void AGOSEngine_Simon1::vcStopAnimation(uint16 zone, uint16 sprite) {
|
||||
uint16 oldCurSpriteId, oldCurZoneNum;
|
||||
VgaSleepStruct *vfs;
|
||||
VgaSprite *vsp;
|
||||
VgaTimerEntry *vte;
|
||||
const byte *vcPtrOrg;
|
||||
|
||||
old_sprite_id = _vgaCurSpriteId;
|
||||
old_cur_file_id = _vgaCurZoneNum;
|
||||
oldCurSpriteId = _vgaCurSpriteId;
|
||||
oldCurZoneNum = _vgaCurZoneNum;
|
||||
vcPtrOrg = _vcPtr;
|
||||
|
||||
_vgaCurZoneNum = zone;
|
||||
@ -114,8 +117,8 @@ void AGOSEngine_Simon1::vcStopAnimation(uint zone, uint sprite) {
|
||||
}
|
||||
}
|
||||
|
||||
_vgaCurZoneNum = old_cur_file_id;
|
||||
_vgaCurSpriteId = old_sprite_id;
|
||||
_vgaCurZoneNum = oldCurZoneNum;
|
||||
_vgaCurSpriteId = oldCurSpriteId;
|
||||
_vcPtr = vcPtrOrg;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user