Core/Game: Rewrote the ScriptMgr to support script reloading.

* Finally this commit enables dynamic script hotswapping
  and finished the PR #15671.
* Split the storage layout to use optimized storages
  for database bound and unbound scripts.
* Add several unload workers to reload scripts correctly
  -> Requires further investigation.
* Fixes memory leaks in ScriptMgr when dropping invalid scripts.
* Fixes VehicleScripts
* Makes OutdoorPvP scripts reloadable
* Makes InstanceMapScripts reloadable
* Makes CommandScripts reloadable
This commit is contained in:
Naios authored and Aokromes committed 2016-08-10 08:40:44 +02:00
1 parent 3957fbf176
commit e23d063f5a
20 files changed
+1087 -303

No files matched your search

@@ -73,9 +73,15 @@ GameObject::~GameObject()
// CleanupsBeforeDelete();
}
bool GameObject::AIM_Initialize()
void GameObject::AIM_Destroy()
{
delete m_AI;
m_AI = nullptr;
}
bool GameObject::AIM_Initialize()
{
AIM_Destroy();
m_AI = FactorySelector::SelectGameObjectAI(this);