diff options
Diffstat (limited to 'engines/adl/adl.h')
-rw-r--r-- | engines/adl/adl.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/engines/adl/adl.h b/engines/adl/adl.h index 143b07471c..24b6ead8d9 100644 --- a/engines/adl/adl.h +++ b/engines/adl/adl.h @@ -284,6 +284,13 @@ protected: void loadDroppedItemOffsets(Common::ReadStream &stream, byte count); // Opcodes + typedef Common::Functor1<ScriptEnv &, int> Opcode; + + template <class T> + Opcode *opcode(int (T::*f)(ScriptEnv &)) { + return new Common::Functor1Mem<ScriptEnv &, int, T>(static_cast<T *>(this), f); + } + int o1_isItemInRoom(ScriptEnv &e); int o1_isMovesGT(ScriptEnv &e); int o1_isVarEQ(ScriptEnv &e); @@ -357,7 +364,6 @@ protected: bool _textMode; // Opcodes - typedef Common::Functor1<ScriptEnv &, int> Opcode; Common::Array<const Opcode *> _condOpcodes, _actOpcodes; // Message strings in data file Common::Array<DataBlockPtr> _messages; |