Eluna implementation (#847)

* azerothcore + eluna done.

* Remove the Eluna single thread limit.

* Read Eluna Settings file.

* submodule change.

* fix(test)  Ubuntu - Cant Link Library after Compile

* The ELUNA is disabled by default.

* remove submodule luaEngine.

* some change

* fix a error

* change cmake

* fix: some onplayerchat does not have hooks.

* Eluna: Add BG event Hooks.

* fix:cmake hook AFTER_LOAD_CONF not work.

* Remove the eluna switch.

* Remove some define in the core.

* fix conf file not read in the linux.

* eluna : change bg hook parameter type

* Remove TC log function call

* change bg hook OnBGEnd parameter type.


Note: to enable Eluna, the module is required
This commit is contained in:
ayase
2018-05-23 02:22:11 +08:00
committed by Barbz
parent 0da1f8c706
commit 00777a80ae
38 changed files with 854 additions and 62 deletions

View File

@@ -16,6 +16,10 @@
#include "GridDefines.h"
#include "Map.h"
#ifdef ELUNA
class ElunaEventProcessor;
#endif
#include <set>
#include <string>
#include <sstream>
@@ -721,8 +725,11 @@ class WorldObject : public Object, public WorldLocation
public:
virtual ~WorldObject();
virtual void Update (uint32 /*time_diff*/) { }
#ifdef ELUNA
virtual void Update(uint32 /*time_diff*/);
#else
virtual void Update(uint32 /*time_diff*/) { };
#endif
void _Create(uint32 guidlow, HighGuid guidhigh, uint32 phaseMask);
virtual void RemoveFromWorld()
@@ -735,6 +742,10 @@ class WorldObject : public Object, public WorldLocation
Object::RemoveFromWorld();
}
#ifdef ELUNA
ElunaEventProcessor* elunaEvents;
#endif
void GetNearPoint2D(float &x, float &y, float distance, float absAngle) const;
void GetNearPoint(WorldObject const* searcher, float &x, float &y, float &z, float searcher_size, float distance2d, float absAngle) const;
bool GetClosePoint(float &x, float &y, float &z, float size, float distance2d = 0, float angle = 0, const WorldObject* forWho = NULL, bool force = false) const;