mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-22 18:15:31 +01:00
*Event Hooks (OnLogin, OnLogout, OnPVPKill) by Hawthorne
*Boss Emote Command for DB Scripts by XTElite1 --HG-- branch : trunk
This commit is contained in:
@@ -220,6 +220,30 @@ void Script::RegisterSelf()
|
||||
//********************************
|
||||
//*** Functions to be Exported ***
|
||||
|
||||
TRINITY_DLL_EXPORT
|
||||
void OnLogin(Player *pPlayer)
|
||||
{
|
||||
Script *tmpscript = m_scripts[GetScriptId("scripted_on_events")];
|
||||
if (!tmpscript || !tmpscript->pOnLogin) return;
|
||||
tmpscript->pOnLogin(pPlayer);
|
||||
}
|
||||
|
||||
TRINITY_DLL_EXPORT
|
||||
void OnLogout(Player *pPlayer)
|
||||
{
|
||||
Script *tmpscript = m_scripts[GetScriptId("scripted_on_events")];
|
||||
if (!tmpscript || !tmpscript->pOnLogout) return;
|
||||
tmpscript->pOnLogout(pPlayer);
|
||||
}
|
||||
|
||||
TRINITY_DLL_EXPORT
|
||||
void OnPVPKill(Player *killer, Player *killed)
|
||||
{
|
||||
Script *tmpscript = m_scripts[GetScriptId("scripted_on_events")];
|
||||
if (!tmpscript || !tmpscript->pOnPVPKill) return;
|
||||
tmpscript->pOnPVPKill(killer, killed);
|
||||
}
|
||||
|
||||
TRINITY_DLL_EXPORT
|
||||
char const* ScriptsVersion()
|
||||
{
|
||||
|
||||
@@ -43,6 +43,9 @@ struct Script
|
||||
std::string Name;
|
||||
|
||||
//Methods to be scripted
|
||||
void (*pOnLogin )(Player*);
|
||||
void (*pOnLogout )(Player*);
|
||||
void (*pOnPVPKill )(Player*, Player*);
|
||||
bool (*pGossipHello )(Player*, Creature*);
|
||||
bool (*pQuestAccept )(Player*, Creature*, Quest const* );
|
||||
bool (*pGossipSelect )(Player*, Creature*, uint32 , uint32 );
|
||||
|
||||
@@ -2645,6 +2645,10 @@
|
||||
<Filter
|
||||
Name="custom"
|
||||
>
|
||||
<File
|
||||
RelativePath="..\scripts\custom\on_events.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\scripts\custom\npc_acherus_taxi.cpp"
|
||||
>
|
||||
|
||||
@@ -2643,6 +2643,10 @@
|
||||
<Filter
|
||||
Name="custom"
|
||||
>
|
||||
<File
|
||||
RelativePath="..\scripts\custom\on_events.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\scripts\custom\npc_acherus_taxi.cpp"
|
||||
>
|
||||
|
||||
31
src/bindings/scripts/scripts/custom/on_events.cpp
Normal file
31
src/bindings/scripts/scripts/custom/on_events.cpp
Normal file
@@ -0,0 +1,31 @@
|
||||
#include "precompiled.h"
|
||||
#include <cstring>
|
||||
|
||||
//This function is called when the player logs in (every login)
|
||||
void OnLogin(Player *pPlayer)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
//This function is called when the player logs out
|
||||
void OnLogout(Player *pPlayer)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
//This function is called when the player kills another player
|
||||
void OnPVPKill(Player *killer, Player *killed)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void AddSC_onevents()
|
||||
{
|
||||
Script *newscript;
|
||||
newscript = new Script;
|
||||
newscript->Name = "scripted_on_events";
|
||||
newscript->pOnLogin = &OnLogin;
|
||||
newscript->pOnLogout = &OnLogout;
|
||||
newscript->pOnPVPKill = &OnPVPKill;
|
||||
newscript->RegisterSelf();
|
||||
}
|
||||
@@ -397,6 +397,7 @@ extern void AddSC_shadowmoon_valley();
|
||||
extern void AddSC_shattrath_city();
|
||||
extern void AddSC_terokkar_forest();
|
||||
extern void AddSC_zangarmarsh();
|
||||
extern void AddSC_onevents();
|
||||
|
||||
void AddScripts()
|
||||
{
|
||||
@@ -793,4 +794,5 @@ void AddScripts()
|
||||
AddSC_shattrath_city();
|
||||
AddSC_terokkar_forest();
|
||||
AddSC_zangarmarsh();
|
||||
AddSC_onevents();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user