mirror of
https://github.com/libretro/scummvm.git
synced 2025-01-24 11:36:22 +00:00
Refixed getActorY in indy3. Fixed class (dunno if the fix doesn't break something else. Fixed intro by slowing down music rate by 3.
svn-id: r4018
This commit is contained in:
parent
f442157a14
commit
ed65e89a89
@ -272,7 +272,7 @@ void Scumm::executeScript()
|
||||
_opcode = fetchScriptByte();
|
||||
_scriptPointerStart = _scriptPointer;
|
||||
vm.slot[_currentScript].didexec = 1;
|
||||
debug(1, "Script %d: [%X] %s()", vm.slot[_currentScript].number, _opcode, _opcodes_lookup[_opcode]);
|
||||
//debug(1, "Script %d: [%X] %s()", vm.slot[_currentScript].number, _opcode, _opcodes_lookup[_opcode]);
|
||||
op = getOpcode(_opcode);
|
||||
(this->*op) ();
|
||||
}
|
||||
|
@ -827,21 +827,18 @@ void Scumm::o5_actorSetClass()
|
||||
_classData[act] = 0;
|
||||
|
||||
if( _features & GF_SMALL_HEADER)
|
||||
|
||||
{
|
||||
|
||||
Actor *a;
|
||||
|
||||
a=derefActor(act);
|
||||
|
||||
a->forceClip=0;
|
||||
|
||||
}
|
||||
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
if(_gameId == GID_INDY3_256)
|
||||
newClass--;
|
||||
|
||||
if (newClass & 0x80)
|
||||
putClass(act, newClass, 1);
|
||||
else
|
||||
@ -1323,7 +1320,7 @@ void Scumm::o5_getActorY()
|
||||
actor = getVarOrDirectByte(0x80);
|
||||
else
|
||||
actor = getVarOrDirectWord(0x80);
|
||||
setResult(actor);
|
||||
setResult(getObjY(actor));
|
||||
}
|
||||
|
||||
void Scumm::o5_getAnimCounter()
|
||||
@ -2247,6 +2244,7 @@ void Scumm::o5_startScript()
|
||||
|
||||
void Scumm::o5_startSound()
|
||||
{
|
||||
_vars[VAR_MUSIC_FLAG]=0;
|
||||
addSoundToQueue(getVarOrDirectByte(0x80));
|
||||
}
|
||||
|
||||
@ -2505,9 +2503,6 @@ void Scumm::o5_wait()
|
||||
break;
|
||||
return;
|
||||
case 2: /* wait for message */
|
||||
if ((_currentRoom == 0) && (_gameId == GID_ZAK256)) // Bypass Zak256 script hang
|
||||
return;
|
||||
|
||||
if (_vars[VAR_HAVE_MSG])
|
||||
break;
|
||||
return;
|
||||
|
1
scumm.h
1
scumm.h
@ -958,6 +958,7 @@ public:
|
||||
uint16 _mouthSyncTimes[52];
|
||||
uint _curSoundPos;
|
||||
int current_cd_sound;
|
||||
int tempMusic;
|
||||
|
||||
#ifdef COMPRESSED_SOUND_FILE
|
||||
|
||||
|
14
scummvm.cpp
14
scummvm.cpp
@ -53,6 +53,8 @@ void Scumm::scummInit()
|
||||
int i;
|
||||
Actor *a;
|
||||
|
||||
tempMusic=0;
|
||||
|
||||
debug(9, "scummInit");
|
||||
|
||||
if (_features & GF_SMALL_HEADER)
|
||||
@ -252,7 +254,17 @@ int Scumm::scummLoop(int delta)
|
||||
}
|
||||
}
|
||||
} else if (_features & GF_OLD256)
|
||||
_vars[VAR_MUSIC_FLAG]++; // ENDERFIX
|
||||
{
|
||||
if(tempMusic == 3)
|
||||
{
|
||||
tempMusic = 0;
|
||||
_vars[VAR_MUSIC_FLAG]++;
|
||||
}
|
||||
else
|
||||
{
|
||||
tempMusic ++;
|
||||
}
|
||||
}
|
||||
|
||||
if (_saveLoadFlag) {
|
||||
if (_saveLoadFlag == 1) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user