mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-17 16:10:49 +01:00
Core/Scripts: Add GroupScript class
--HG-- branch : trunk
This commit is contained in:
@@ -174,6 +174,7 @@ ScriptMgr::~ScriptMgr()
|
||||
SCR_CLEAR(AchievementCriteriaScript);
|
||||
SCR_CLEAR(PlayerScript);
|
||||
SCR_CLEAR(GuildScript);
|
||||
SCR_CLEAR(GroupScript);
|
||||
|
||||
#undef SCR_CLEAR
|
||||
}
|
||||
@@ -1199,6 +1200,36 @@ void ScriptMgr::OnGuildDisband(Guild *guild)
|
||||
FOREACH_SCRIPT(GuildScript)->OnDisband(guild);
|
||||
}
|
||||
|
||||
void ScriptMgr::OnGroupAddMember(Group* group, uint64 guid)
|
||||
{
|
||||
ASSERT(group);
|
||||
FOREACH_SCRIPT(GroupScript)->OnAddMember(group, guid);
|
||||
}
|
||||
|
||||
void ScriptMgr::OnGroupInviteMember(Group* group, uint64 guid)
|
||||
{
|
||||
ASSERT(group);
|
||||
FOREACH_SCRIPT(GroupScript)->OnInviteMember(group, guid);
|
||||
}
|
||||
|
||||
void ScriptMgr::OnGroupRemoveMember(Group* group, uint64 guid, RemoveMethod method)
|
||||
{
|
||||
ASSERT(group);
|
||||
FOREACH_SCRIPT(GroupScript)->OnRemoveMember(group, guid, method);
|
||||
}
|
||||
|
||||
void ScriptMgr::OnGroupChangeLeader(Group* group, uint64 newLeaderGuid, uint64 oldLeaderGuid)
|
||||
{
|
||||
ASSERT(group);
|
||||
FOREACH_SCRIPT(GroupScript)->OnChangeLeader(group, newLeaderGuid, oldLeaderGuid);
|
||||
}
|
||||
|
||||
void ScriptMgr::OnGroupDisband(Group* group)
|
||||
{
|
||||
ASSERT(group);
|
||||
FOREACH_SCRIPT(GroupScript)->OnDisband(group);
|
||||
}
|
||||
|
||||
SpellScriptLoader::SpellScriptLoader(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
@@ -1346,6 +1377,12 @@ GuildScript::GuildScript(const char* name)
|
||||
ScriptMgr::ScriptRegistry<GuildScript>::AddScript(this);
|
||||
}
|
||||
|
||||
GroupScript::GroupScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptMgr::ScriptRegistry<GroupScript>::AddScript(this);
|
||||
}
|
||||
|
||||
// Instantiate static members of ScriptMgr::ScriptRegistry.
|
||||
template<class TScript> std::map<uint32, TScript*> ScriptMgr::ScriptRegistry<TScript>::ScriptPointerList;
|
||||
template<class TScript> uint32 ScriptMgr::ScriptRegistry<TScript>::_scriptIdCounter = 0;
|
||||
@@ -1374,6 +1411,7 @@ template class ScriptMgr::ScriptRegistry<TransportScript>;
|
||||
template class ScriptMgr::ScriptRegistry<AchievementCriteriaScript>;
|
||||
template class ScriptMgr::ScriptRegistry<PlayerScript>;
|
||||
template class ScriptMgr::ScriptRegistry<GuildScript>;
|
||||
template class ScriptMgr::ScriptRegistry<GroupScript>;
|
||||
|
||||
// Undefine utility macros.
|
||||
#undef GET_SCRIPT_RET
|
||||
|
||||
Reference in New Issue
Block a user