summaryrefslogtreecommitdiff
path: root/src/game-server/being.cpp
diff options
context:
space:
mode:
authorErik Schilling <ablu.erikschilling@googlemail.com>2013-02-20 22:46:55 +0100
committerErik Schilling <ablu.erikschilling@googlemail.com>2013-02-21 07:29:13 +0100
commit4559ca444daacfd02ebb05f1657148a2b4cf3d8b (patch)
tree8410fe19f397e70d43a8542c6ba7339d61d9bc0e /src/game-server/being.cpp
parentad1d58b795681cad74642c0f4818b66a3f869794 (diff)
downloadmanaserv-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/being.cpp')
-rw-r--r--src/game-server/being.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/game-server/being.cpp b/src/game-server/being.cpp
index 2c334b37..66545ff6 100644
--- a/src/game-server/being.cpp
+++ b/src/game-server/being.cpp
@@ -603,11 +603,10 @@ void Being::recalculateBaseAttribute(unsigned attr)
return;
Script *script = ScriptManager::currentState();
- script->setMap(getMap());
script->prepare(mRecalculateBaseAttributeCallback);
script->push(this);
script->push(attr);
- script->execute();
+ script->execute(getMap());
}
void Being::updateDerivedAttributes(unsigned attr)
@@ -632,11 +631,10 @@ void Being::updateDerivedAttributes(unsigned attr)
return;
Script *script = ScriptManager::currentState();
- script->setMap(getMap());
script->prepare(mRecalculateDerivedAttributesCallback);
script->push(this);
script->push(attr);
- script->execute();
+ script->execute(getMap());
}
void Being::applyStatusEffect(int id, int timer)