aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/script_v3.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/kyra/script_v3.cpp')
-rw-r--r--engines/kyra/script_v3.cpp26
1 files changed, 23 insertions, 3 deletions
diff --git a/engines/kyra/script_v3.cpp b/engines/kyra/script_v3.cpp
index 93564c18e2..a2f5c28978 100644
--- a/engines/kyra/script_v3.cpp
+++ b/engines/kyra/script_v3.cpp
@@ -936,6 +936,26 @@ int KyraEngine_v3::o3_setDeathHandler(ScriptState *script) {
return 0;
}
+int KyraEngine_v3::o3_showGoodConscience(ScriptState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v3::o3_showGoodConscience(%p) ()", (const void *)script);
+ showGoodConscience();
+ return 0;
+}
+
+int KyraEngine_v3::o3_goodConscienceChat(ScriptState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v3::o3_goodConscienceChat(%p) (%d)", (const void *)script, stackPos(0));
+ int id = stackPos(0);
+ const char *str = (const char*)getTableEntry(_useActorBuffer ? _actorFile : _sceneStrings, id);
+ goodConscienceChat(str, _vocHigh, id);
+ return 0;
+}
+
+int KyraEngine_v3::o3_hideGoodConscience(ScriptState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v3::o3_hideGoodConscience(%p) ()", (const void *)script);
+ hideGoodConscience();
+ return 0;
+}
+
int KyraEngine_v3::o3_waitForConfirmationClick(ScriptState *script) {
debugC(3, kDebugLevelScriptFuncs, "KyraEngine_v3::o2_waitForConfirmationClick(%p) (%d)", (const void *)script, stackPos(0));
resetSkipFlag();
@@ -1545,10 +1565,10 @@ void KyraEngine_v3::setupOpcodeTable() {
Opcode(o3_getRand);
Opcode(o3_dummy);
Opcode(o3_setDeathHandler);
- OpcodeUnImpl();
+ Opcode(o3_showGoodConscience);
// 0x64
- OpcodeUnImpl();
- OpcodeUnImpl();
+ Opcode(o3_goodConscienceChat);
+ Opcode(o3_hideGoodConscience);
Opcode(o3_dummy);
Opcode(o3_dummy);
// 0x68