From 360e028331744e1e269db3f8a2d1fec34da9229a Mon Sep 17 00:00:00 2001 From: XTZGZoReX Date: Sat, 7 Aug 2010 14:17:32 +0200 Subject: * Add new TransportScript::OnRelocate hook. * TransportScript::OnUpdate is now called on every tick, not just on movement update. --HG-- branch : trunk --- src/server/game/Scripting/ScriptMgr.cpp | 6 ++++++ src/server/game/Scripting/ScriptMgr.h | 4 ++++ 2 files changed, 10 insertions(+) (limited to 'src/server/game/Scripting') diff --git a/src/server/game/Scripting/ScriptMgr.cpp b/src/server/game/Scripting/ScriptMgr.cpp index 9487baa5811..86336d138c6 100644 --- a/src/server/game/Scripting/ScriptMgr.cpp +++ b/src/server/game/Scripting/ScriptMgr.cpp @@ -1006,6 +1006,12 @@ void ScriptMgr::OnTransportUpdate(Transport* transport, uint32 diff) tmpscript->OnUpdate(transport, diff); } +void ScriptMgr::OnRelocate(Transport* transport, uint32 mapId, float x, float y, float z) +{ + GET_SCRIPT(TransportScript, transport->GetScriptId(), tmpscript); + tmpscript->OnRelocate(transport, mapId, x, y, z); +} + void SpellHandlerScript::RegisterSelf() { ScriptMgr::ScriptRegistry::AddScript(this); diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h index 7cb81724497..971924b6b58 100644 --- a/src/server/game/Scripting/ScriptMgr.h +++ b/src/server/game/Scripting/ScriptMgr.h @@ -729,6 +729,9 @@ class TransportScript : public ScriptObject, public UpdatableScript // Called when a player exits the transport. virtual void OnRemovePassenger(Transport* transport, Player* player) { } + + // Called when a transport moves. + virtual void OnRelocate(Transport* transport, uint32 mapId, float x, float y, float z) { } }; // Placed here due to ScriptRegistry::AddScript dependency. @@ -895,6 +898,7 @@ class ScriptMgr void OnAddCreaturePassenger(Transport* transport, Creature* creature); void OnRemovePassenger(Transport* transport, Player* player); void OnTransportUpdate(Transport* transport, uint32 diff); + void OnRelocate(Transport* transport, uint32 mapId, float x, float y, float z); public: /* ScriptRegistry */ -- cgit v1.2.3