diff options
author | Erik Schilling <ablu.erikschilling@googlemail.com> | 2013-02-20 22:46:55 +0100 |
---|---|---|
committer | Erik Schilling <ablu.erikschilling@googlemail.com> | 2013-02-21 07:29:13 +0100 |
commit | 4559ca444daacfd02ebb05f1657148a2b4cf3d8b (patch) | |
tree | 8410fe19f397e70d43a8542c6ba7339d61d9bc0e /src/game-server/npc.cpp | |
parent | ad1d58b795681cad74642c0f4818b66a3f869794 (diff) | |
download | manaserv-4559ca444daacfd02ebb05f1657148a2b4cf3d8b.tar.gz manaserv-4559ca444daacfd02ebb05f1657148a2b4cf3d8b.tar.bz2 manaserv-4559ca444daacfd02ebb05f1657148a2b4cf3d8b.tar.xz manaserv-4559ca444daacfd02ebb05f1657148a2b4cf3d8b.zip |
Introduced Script::Context
This should allow to finally call functions to lua without having to care
about working around situations where a lua call causes a c++ call which
needs to call to lua again.
Tested against the source of tales repository data.
Diffstat (limited to 'src/game-server/npc.cpp')
-rw-r--r-- | src/game-server/npc.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/game-server/npc.cpp b/src/game-server/npc.cpp index ce6ac32e..2eb73031 100644 --- a/src/game-server/npc.cpp +++ b/src/game-server/npc.cpp @@ -54,11 +54,9 @@ void NPC::update() return; Script *script = ScriptManager::currentState(); - script->setMap(getMap()); - script->prepare(mUpdateCallback); script->push(this); - script->execute(); + script->execute(getMap()); } void NPC::prompt(Character *ch, bool restart) @@ -71,7 +69,7 @@ void NPC::prompt(Character *ch, bool restart) if (restart) { Script::Thread *thread = script->newThread(); - thread->mMap = getMap(); + thread->getContext().map = getMap(); script->prepare(mTalkCallback); script->push(this); script->push(ch); |