diff options
author | Johannes Schickel | 2007-10-10 09:06:15 +0000 |
---|---|---|
committer | Johannes Schickel | 2007-10-10 09:06:15 +0000 |
commit | d896894631c8996d2e232ff56e0791ff5564f096 (patch) | |
tree | 468cffb06d1806a95cb7459013aa3948fc359edc /engines/kyra/script_v2.cpp | |
parent | 598e35bab8b6ea6dc96fa7355f578f0c07acab52 (diff) | |
download | scummvm-rg350-d896894631c8996d2e232ff56e0791ff5564f096.tar.gz scummvm-rg350-d896894631c8996d2e232ff56e0791ff5564f096.tar.bz2 scummvm-rg350-d896894631c8996d2e232ff56e0791ff5564f096.zip |
- Made some sound functions a bit more generic for use with Kyra1 and Kyra2
HoF:
- Added sound support (sfx sound wrong currently though)
- Implemented opcodes:
-> o2_loadMusicTrack
-> o2_playWanderScoreViaMap
-> o2_playSoundEffect
-> o2t_playSoundEffect
svn-id: r29183
Diffstat (limited to 'engines/kyra/script_v2.cpp')
-rw-r--r-- | engines/kyra/script_v2.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/engines/kyra/script_v2.cpp b/engines/kyra/script_v2.cpp index 4599d0347d..0a23a53ce8 100644 --- a/engines/kyra/script_v2.cpp +++ b/engines/kyra/script_v2.cpp @@ -440,6 +440,24 @@ int KyraEngine_v2::o2_setZanthiaPos(ScriptState *script) { return 0; } +int KyraEngine_v2::o2_loadMusicTrack(ScriptState *script) { + debugC(3, kDebugLevelScriptFuncs, "o2_loadMusicTrack(%p) (%d)", (const void *)script, stackPos(0)); + snd_loadSoundFile(stackPos(0)); + return 0; +} + +int KyraEngine_v2::o2_playWanderScoreViaMap(ScriptState *script) { + debugC(3, kDebugLevelScriptFuncs, "o2_playWanderScoreViaMap(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1)); + snd_playWanderScoreViaMap(stackPos(0), stackPos(1)); + return 0; +} + +int KyraEngine_v2::o2_playSoundEffect(ScriptState *script) { + debugC(3, kDebugLevelScriptFuncs, "o2_playSoundEffect(%p) (%d)", (const void *)script, stackPos(0)); + snd_playSoundEffect(stackPos(0)); + return 0; +} + int KyraEngine_v2::o2_getRand(ScriptState *script) { debugC(3, kDebugLevelScriptFuncs, "o2_getRand(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1)); assert(stackPos(0) < stackPos(1)); @@ -607,6 +625,12 @@ int KyraEngine_v2::o2t_setCurrentFrame(ScriptState *script) { return 0; } +int KyraEngine_v2::o2t_playSoundEffect(ScriptState *script) { + debugC(3, kDebugLevelScriptFuncs, "o2t_playSoundEffect(%p) (%d)", (const void *)script, stackPos(0)); + snd_playSoundEffect(stackPos(0)); + return 0; +} + int KyraEngine_v2::o2t_setShapeFlag(ScriptState *script) { debugC(3, kDebugLevelScriptFuncs, "o2t_setShapeFlag(%p) (%d)", (const void *)script, stackPos(0)); _newShapeFlag = stackPos(0); |