diff options
author | Nicola Mettifogo | 2008-07-11 13:06:28 +0000 |
---|---|---|
committer | Nicola Mettifogo | 2008-07-11 13:06:28 +0000 |
commit | 8ed023142a9ce0ee825eb3d6c33759281d68357b (patch) | |
tree | fe01c86cc8d04a88fb82a29e79279c25c4e8e922 /engines/parallaction/parallaction.cpp | |
parent | fe655836575214c33c82120e9dd714b95a96e475 (diff) | |
download | scummvm-rg350-8ed023142a9ce0ee825eb3d6c33759281d68357b.tar.gz scummvm-rg350-8ed023142a9ce0ee825eb3d6c33759281d68357b.tar.bz2 scummvm-rg350-8ed023142a9ce0ee825eb3d6c33759281d68357b.zip |
Moved program and command execution code out of the engine, into their own brand new
classes.
svn-id: r33003
Diffstat (limited to 'engines/parallaction/parallaction.cpp')
-rw-r--r-- | engines/parallaction/parallaction.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/engines/parallaction/parallaction.cpp b/engines/parallaction/parallaction.cpp index b2146bd292..295f10820f 100644 --- a/engines/parallaction/parallaction.cpp +++ b/engines/parallaction/parallaction.cpp @@ -84,12 +84,11 @@ Parallaction::Parallaction(OSystem *syst, const PARALLACTIONGameDescription *gam Parallaction::~Parallaction() { - clearSet(_commandOpcodes); - clearSet(_instructionOpcodes); - delete _debugger; delete _globalTable; delete _callableNames; + delete _cmdExec; + delete _programExec; _gfx->clearGfxObjects(kGfxObjCharacter | kGfxObjNormal); hideDialogueStuff(); @@ -386,7 +385,11 @@ void Parallaction::runGame() { _gfx->beginFrame(); if (_input->_inputMode == Input::kInputModeGame) { - runScripts(); + _programExec->runScripts(_location._programs.begin(), _location._programs.end()); + _char._ani->_z = _char._ani->height() + _char._ani->_top; + if (_char._ani->gfxobj) { + _char._ani->gfxobj->z = _char._ani->_z; + } walk(); drawAnimations(); } @@ -422,7 +425,7 @@ void Parallaction::doLocationEnterTransition() { pal.makeGrayscale(); _gfx->setPalette(pal); - runScripts(); + _programExec->runScripts(_location._programs.begin(), _location._programs.end()); drawAnimations(); _gfx->updateScreen(); |