diff options
author | Benjamin Haisch | 2008-05-06 11:45:23 +0000 |
---|---|---|
committer | Benjamin Haisch | 2008-05-06 11:45:23 +0000 |
commit | 9df82055f0dff7c242f889c5d776ad0cca2d5bc8 (patch) | |
tree | 5748f4f80aad87ae23478d8eea4beb7e7eef2013 /engines/made/scriptfuncs.h | |
parent | 397e04d0b1ff6d96502c4eca42c1ab4a31b2dbcd (diff) | |
download | scummvm-rg350-9df82055f0dff7c242f889c5d776ad0cca2d5bc8.tar.gz scummvm-rg350-9df82055f0dff7c242f889c5d776ad0cca2d5bc8.tar.bz2 scummvm-rg350-9df82055f0dff7c242f889c5d776ad0cca2d5bc8.zip |
- The Manhole: New and Enhanced is now (partially) playable
- Implemented cmd_objectp
- Changed how the script externals array is set up
- Cleanup
svn-id: r31895
Diffstat (limited to 'engines/made/scriptfuncs.h')
-rw-r--r-- | engines/made/scriptfuncs.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/engines/made/scriptfuncs.h b/engines/made/scriptfuncs.h index 7e826a9f5e..77e4b12b2e 100644 --- a/engines/made/scriptfuncs.h +++ b/engines/made/scriptfuncs.h @@ -40,12 +40,16 @@ typedef Common::Functor2<int16, int16*, int16> ExternalFunc; class ScriptFunctions { public: ScriptFunctions(MadeEngine *vm) : _vm(vm) {} - virtual ~ScriptFunctions() {} + virtual ~ScriptFunctions() { + for (int i = 0; i < _externalFuncs.size(); ++i) + delete _externalFuncs[i]; + } int16 callFunction(uint16 index, int16 argc, int16 *argv) { if (index >= _externalFuncs.size()) { // TODO: ERROR! return 0; } + debug(4, "%s", _externalFuncNames[index]); return (*_externalFuncs[index])(argc, argv); } virtual void setupExternalsTable() = 0; @@ -55,13 +59,13 @@ protected: Audio::SoundHandle _voiceStreamHandle; Common::Array<const ExternalFunc*> _externalFuncs; + Common::Array<const char *> _externalFuncNames; }; class ScriptFunctionsLgop2 : public ScriptFunctions { public: ScriptFunctionsLgop2(MadeEngine *vm) : ScriptFunctions(vm) {} - ~ScriptFunctionsLgop2() {} void setupExternalsTable(); protected: @@ -122,7 +126,6 @@ protected: class ScriptFunctionsRtz : public ScriptFunctions { public: ScriptFunctionsRtz(MadeEngine *vm) : ScriptFunctions(vm) {} - ~ScriptFunctionsRtz() {} void setupExternalsTable(); protected: @@ -231,7 +234,6 @@ protected: class ScriptFunctionsMhne : public ScriptFunctions { public: ScriptFunctionsMhne(MadeEngine *vm) : ScriptFunctions(vm) {} - ~ScriptFunctionsMhne() {} void setupExternalsTable(); protected: |