diff options
author | Alexander Harkness <me@bearbin.net> | 2015-06-13 12:59:07 +0200 |
---|---|---|
committer | Alexander Harkness <me@bearbin.net> | 2015-06-13 12:59:07 +0200 |
commit | ce93cfc34c85ef34e7a7d52b65fccfe9dcaf7537 (patch) | |
tree | ade44b9828d0146d673901fb2a7e40b026c1fd9e /src/Bindings/PluginLua.cpp | |
parent | NetherPortalScanner: Fixed type conversion warnings. (diff) | |
parent | Added documentation for HOOK_KILLED (diff) | |
download | cuberite-ce93cfc34c85ef34e7a7d52b65fccfe9dcaf7537.tar cuberite-ce93cfc34c85ef34e7a7d52b65fccfe9dcaf7537.tar.gz cuberite-ce93cfc34c85ef34e7a7d52b65fccfe9dcaf7537.tar.bz2 cuberite-ce93cfc34c85ef34e7a7d52b65fccfe9dcaf7537.tar.lz cuberite-ce93cfc34c85ef34e7a7d52b65fccfe9dcaf7537.tar.xz cuberite-ce93cfc34c85ef34e7a7d52b65fccfe9dcaf7537.tar.zst cuberite-ce93cfc34c85ef34e7a7d52b65fccfe9dcaf7537.zip |
Diffstat (limited to '')
-rw-r--r-- | src/Bindings/PluginLua.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/Bindings/PluginLua.cpp b/src/Bindings/PluginLua.cpp index d3ffcd0f4..9be4e0eb4 100644 --- a/src/Bindings/PluginLua.cpp +++ b/src/Bindings/PluginLua.cpp @@ -750,6 +750,30 @@ bool cPluginLua::OnHopperPushingItem(cWorld & a_World, cHopperEntity & a_Hopper, +bool cPluginLua::OnKilled(cEntity & a_Victim, TakeDamageInfo & a_TDI, AString & a_DeathMessage) +{ + cCSLock Lock(m_CriticalSection); + if (!m_LuaState.IsValid()) + { + return false; + } + bool res = false; + cLuaRefs & Refs = m_HookMap[cPluginManager::HOOK_KILLED]; + for (cLuaRefs::iterator itr = Refs.begin(), end = Refs.end(); itr != end; ++itr) + { + m_LuaState.Call((int)(**itr), &a_Victim, &a_TDI, a_DeathMessage, cLuaState::Return, res, a_DeathMessage); + if (res) + { + return true; + } + } + return false; +} + + + + + bool cPluginLua::OnKilling(cEntity & a_Victim, cEntity * a_Killer, TakeDamageInfo & a_TDI) { cCSLock Lock(m_CriticalSection); |