aboutsummaryrefslogtreecommitdiff
path: root/engines/parallaction/parallaction_ns.cpp
diff options
context:
space:
mode:
authorNicola Mettifogo2007-08-12 12:44:26 +0000
committerNicola Mettifogo2007-08-12 12:44:26 +0000
commitee7102d0e74074895fea85022e0e3fe4eb62d9b2 (patch)
treeac79b975e9a6676e83689b56973fbff2cef2305a /engines/parallaction/parallaction_ns.cpp
parent9a9f801e9373429bcbff45a5ca0db4c27cad442e (diff)
downloadscummvm-rg350-ee7102d0e74074895fea85022e0e3fe4eb62d9b2.tar.gz
scummvm-rg350-ee7102d0e74074895fea85022e0e3fe4eb62d9b2.tar.bz2
scummvm-rg350-ee7102d0e74074895fea85022e0e3fe4eb62d9b2.zip
Pushed menu handling into Parallaction_ns.
svn-id: r28556
Diffstat (limited to 'engines/parallaction/parallaction_ns.cpp')
-rw-r--r--engines/parallaction/parallaction_ns.cpp37
1 files changed, 37 insertions, 0 deletions
diff --git a/engines/parallaction/parallaction_ns.cpp b/engines/parallaction/parallaction_ns.cpp
index e3a706d794..6dcae1bdc8 100644
--- a/engines/parallaction/parallaction_ns.cpp
+++ b/engines/parallaction/parallaction_ns.cpp
@@ -30,6 +30,8 @@
#include "parallaction/parallaction.h"
#include "parallaction/sound.h"
+#include "parallaction/menu.h"
+
namespace Parallaction {
@@ -164,4 +166,39 @@ void Parallaction_ns::callFunction(uint index, void* parm) {
}
+int Parallaction_ns::go() {
+
+ _menu = new Menu(this);
+ _menu->start();
+
+ char *v4 = strchr(_location._name, '.');
+ if (v4) {
+ *v4 = '\0';
+ }
+
+ _globalTable = _disk->loadTable("global");
+
+ _engineFlags &= ~kEngineChangeLocation;
+ changeCharacter(_characterName);
+
+ strcpy(_saveData1, _location._name);
+ parseLocation(_location._name);
+
+ if (_location._startPosition.x != -1000) {
+ _char._ani._left = _location._startPosition.x;
+ _char._ani._top = _location._startPosition.y;
+ _char._ani._frame = _location._startFrame;
+ _location._startPosition.y = -1000;
+ _location._startPosition.x = -1000;
+ };
+
+ runGame();
+
+ delete _menu;
+
+ return 0;
+}
+
+
+
} // namespace Parallaction