List of All Events
(Changed faulty arguments for a hook.) |
Zdroid9770 (Talk | contribs) m (→Register Unit Gossip Events) |
||
(13 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | ==Quest Events== | + | {{LuaMenu}} |
− | Quest callbacks are made by using the function [[Lua_RegisterQuestEvent|RegisterQuestEvent(QuestId, EventId, function)]] | + | |
+ | |||
+ | == Register Quest Events == | ||
+ | Quest callbacks are made by using the function [[Lua_RegisterQuestEvent|RegisterQuestEvent(QuestId, EventId, function)]] | ||
<source lang="lua"> | <source lang="lua"> | ||
QUEST_EVENT_ON_ACCEPT = 1 --(pPlayer, QuestId) | QUEST_EVENT_ON_ACCEPT = 1 --(pPlayer, QuestId) | ||
Line 11: | Line 14: | ||
</source> | </source> | ||
− | == | + | == Register Unit Events == |
− | + | Unit callbacks are made by using the function [[Lua_RegisterUnitEvent|RegisterUnitEvent(UnitId, EventId, function)]] | |
− | <source lang="lua"> | + | <source lang="lua"> |
− | + | UNIT_EVENT_ON_ENTER_COMBAT = 1 --(pUnit, event, pAttacker) | |
− | + | UNIT_EVENT_ON_LEAVE_COMBAT = 2 --(pUnit, event, pLastTarget) | |
− | + | UNIT_EVENT_ON_TARGET_DIED = 3 --(pUnit, event, pDied) | |
− | + | UNIT_EVENT_ON_DIED = 4 --(pUnit, event, pLastTarget) | |
− | + | UNIT_EVENT_ON_TARGET_PARRIED = 5 --(pUnit, event, pTarget) | |
− | + | UNIT_EVENT_ON_TARGET_DODGED = 6 --(pUnit, event, pTarget) | |
− | + | UNIT_EVENT_ON_TARGET_BLOCKED = 7 --(pUnit, event, pTarget, pAmount) | |
− | + | UNIT_EVENT_ON_TARGET_CRIT_HIT = 8 --(pUnit, event, pTarget, pAmount) | |
− | + | UNIT_EVENT_ON_PARRY = 9 --(pUnit, event, pTarget) | |
− | + | UNIT_EVENT_ON_DODGED = 10 --(pUnit, event, pTarget) | |
− | + | UNIT_EVENT_ON_BLOCKED = 11 --(pUnit, event, pTarget, pAmount) | |
− | + | UNIT_EVENT_ON_CRIT_HIT = 12 --(pUnit, event, pTarget, pAmount) | |
− | + | UNIT_EVENT_ON_HIT = 13 --(pUnit, event, pTarget, pAmount) | |
− | + | UNIT_EVENT_ON_ASSIST_TARGET_DIED = 14 --(pUnit, event, pAssistTarget) | |
− | + | UNIT_EVENT_ON_FEAR = 15 --(pUnit, event, pTarget, pSpell) | |
− | + | UNIT_EVENT_ON_FLEE = 16 --(pUnit, event, pTarget) | |
− | + | UNIT_EVENT_ON_CALL_FOR_HELP = 17 --(pUnit, event) | |
− | + | UNIT_EVENT_ON_LOAD = 18 --(pUnit, event) | |
− | + | UNIT_EVENT_ON_REACH_WP = 19 --(pUnit, event, pWaypointId, pForwards) | |
− | + | UNIT_EVENT_ON_LOOT_TAKEN = 20 --(pUnit, event, pPlayer, pItemId) | |
− | + | UNIT_EVENT_ON_AIUPDATE = 21 --(pUnit, event) | |
− | + | UNIT_EVENT_ON_EMOTE = 22 --(pUnit, event, pPlayer, pEmote) | |
− | + | UNIT_EVENT_ON_DAMAGE_TAKEN = 23 --(pUnit, event, pAttacker, pAmount) | |
− | + | UNIT_EVENT_ON_ENTER_VEHICLE = 24 --(pUnit) | |
− | + | UNIT_EVENT_ON_EXIT_VEHICLE = 25 --(pUnit) | |
− | + | UNIT_EVENT_ON_FIRST_PASSENGER_ENTERED = 26 --(pUnit, Passenger) | |
− | + | UNIT_EVENT_ON_VEHICLE_FULL = 27 --(pUnit) | |
+ | UNIT_EVENT_ON_LAST_PASSENGER_LEFT = 28 --(pUnit, Passenger) | ||
</source> | </source> | ||
− | ==GameObject Events== | + | == Register GameObject Events == |
GameObject callbacks are made by using the function [[Lua_RegisterGameObjectEvent|RegisterGameObjectEvent(GameObjectId, EventId, function)]] | GameObject callbacks are made by using the function [[Lua_RegisterGameObjectEvent|RegisterGameObjectEvent(GameObjectId, EventId, function)]] | ||
<source lang="lua"> | <source lang="lua"> | ||
Line 56: | Line 60: | ||
</source> | </source> | ||
− | ==Gossip Events== | + | == Register Unit Gossip Events == |
Gossip Event callbacks can be made using any of the following functions. Note that the pUnit in the arguments of these functions variate depending on the register you use. | Gossip Event callbacks can be made using any of the following functions. Note that the pUnit in the arguments of these functions variate depending on the register you use. | ||
<br />[[Lua_RegisterUnitGossipEvent|RegisterUnitGossipEvent(UnitId, EventId, function)]] (Applies to Creatures only) | <br />[[Lua_RegisterUnitGossipEvent|RegisterUnitGossipEvent(UnitId, EventId, function)]] (Applies to Creatures only) | ||
Line 65: | Line 69: | ||
GOSSIP_EVENT_ON_SELECT_OPTION = 2 --(pUnit, event, pPlayer, id, intid, code) | GOSSIP_EVENT_ON_SELECT_OPTION = 2 --(pUnit, event, pPlayer, id, intid, code) | ||
GOSSIP_EVENT_ON_END = 3 --(pUnit, event) | GOSSIP_EVENT_ON_END = 3 --(pUnit, event) | ||
+ | GAMEOBJECT_GOSSIP_EVENT_ON_TALK = 4 --(pGameObject, event, pPlayer) -- Use this one instead #1 | ||
</source> | </source> | ||
− | ==Instance | + | == Register Dummy Spell Event == |
− | Instance Hook callbacks can be made by using the [[Lua_RegisterInstanceEvent|RegisterInstanceEvent(MapId, EventId, function)]] | + | Dummy Spell callbacks can be made by using the function [[Lua_RegisterDummySpell|RegisterDummySpell(SpellId, function)]] |
+ | <source lang="lua"> --(spellIndex, pSpell) </source> | ||
+ | |||
+ | == Register Instance Events == | ||
+ | Instance Hook callbacks can be made by using the function [[Lua_RegisterInstanceEvent|RegisterInstanceEvent(MapId, EventId, function)]] | ||
<source lang="lua"> | <source lang="lua"> | ||
INSTANCE_EVENT_ON_PLAYER_DEATH = 1 --(InstanceID, pPlayer, pKiller) | INSTANCE_EVENT_ON_PLAYER_DEATH = 1 --(InstanceID, pPlayer, pKiller) | ||
Line 82: | Line 91: | ||
</source> | </source> | ||
− | ==Server Hooks== | + | == Register Server Hooks == |
− | Server Hook callbacks can be made by using the [[Lua_RegisterServerHook|RegisterServerHook(EventId, function)]] | + | Server Hook callbacks can be made by using the function [[Lua_RegisterServerHook|RegisterServerHook(EventId, function)]] |
<source lang="lua"> | <source lang="lua"> | ||
− | SERVER_HOOK_NEW_CHARACTER = 1 --(event, pName, | + | SERVER_HOOK_NEW_CHARACTER = 1 --(event, pName, int Race, int Class) |
SERVER_HOOK_KILL_PLAYER = 2 --(event, pKiller, pVictim) | SERVER_HOOK_KILL_PLAYER = 2 --(event, pKiller, pVictim) | ||
− | SERVER_HOOK_FIRST_ENTER_WORLD = 3 --(event, pPlayer) | + | SERVER_HOOK_FIRST_ENTER_WORLD = 3 --(event, pPlayer) / a new created character enters for first time the world |
− | SERVER_HOOK_ENTER_WORLD = 4 --(event, pPlayer) | + | SERVER_HOOK_ENTER_WORLD = 4 --(event, pPlayer) / a character enters the world (login) or moves to another map |
− | SERVER_HOOK_GUILD_JOIN = 5 --(event, pPlayer, | + | SERVER_HOOK_GUILD_JOIN = 5 --(event, pPlayer, str GuildName) |
SERVER_HOOK_DEATH = 6 --(event, pPlayer) | SERVER_HOOK_DEATH = 6 --(event, pPlayer) | ||
SERVER_HOOK_REPOP = 7 --(event, pPlayer) | SERVER_HOOK_REPOP = 7 --(event, pPlayer) | ||
Line 100: | Line 109: | ||
SERVER_HOOK_QUEST_ACCEPT = 14 --(event, pPlayer, QuestId, pQuestGiver) | SERVER_HOOK_QUEST_ACCEPT = 14 --(event, pPlayer, QuestId, pQuestGiver) | ||
SERVER_HOOK_ZONE = 15 --(event, pPlayer, ZoneId, OldZoneId) | SERVER_HOOK_ZONE = 15 --(event, pPlayer, ZoneId, OldZoneId) | ||
− | SERVER_HOOK_CHAT = 16 --(event, pPlayer, | + | SERVER_HOOK_CHAT = 16 --(event, pPlayer, str Message, Type, Language, Misc) |
SERVER_HOOK_LOOT = 17 --(event, pPlayer, pTarget, Money, ItemId) | SERVER_HOOK_LOOT = 17 --(event, pPlayer, pTarget, Money, ItemId) | ||
SERVER_HOOK_GUILD_CREATE = 18 --(event, pPlayer, pGuildName) | SERVER_HOOK_GUILD_CREATE = 18 --(event, pPlayer, pGuildName) | ||
− | SERVER_HOOK_ENTER_WORLD_2 = 19 --(event, pPlayer) | + | SERVER_HOOK_ENTER_WORLD_2 = 19 --(event, pPlayer) / a character enters the world (login) |
SERVER_HOOK_CHARACTER_CREATE = 20 --(event, pPlayer) | SERVER_HOOK_CHARACTER_CREATE = 20 --(event, pPlayer) | ||
SERVER_HOOK_QUEST_CANCELLED = 21 --(event, pPlayer, QuestId) | SERVER_HOOK_QUEST_CANCELLED = 21 --(event, pPlayer, QuestId) | ||
SERVER_HOOK_QUEST_FINISHED = 22 --(event, pPlayer, QuestId, pQuestGiver) | SERVER_HOOK_QUEST_FINISHED = 22 --(event, pPlayer, QuestId, pQuestGiver) | ||
SERVER_HOOK_HONORABLE_KILL = 23 --(event, pPlayer, pKilled) | SERVER_HOOK_HONORABLE_KILL = 23 --(event, pPlayer, pKilled) | ||
− | SERVER_HOOK_ARENA_FINISH = 24 --(event, pPlayer, | + | SERVER_HOOK_ARENA_FINISH = 24 --(event, pPlayer, str TeamName, bWinner, bRated) |
SERVER_HOOK_OBJECTLOOT = 25 --(event, pPlayer, pTarget, Money, ItemId) | SERVER_HOOK_OBJECTLOOT = 25 --(event, pPlayer, pTarget, Money, ItemId) | ||
SERVER_HOOK_AREATRIGGER = 26 --(event, pPlayer, AreaTriggerId) | SERVER_HOOK_AREATRIGGER = 26 --(event, pPlayer, AreaTriggerId) | ||
SERVER_HOOK_POST_LEVELUP = 27 --(event, pPlayer) | SERVER_HOOK_POST_LEVELUP = 27 --(event, pPlayer) | ||
− | SERVER_HOOK_PRE_DIE = 28 --(event, | + | SERVER_HOOK_PRE_DIE = 28 --(event, pKiller, pDied) |
SERVER_HOOK_ADVANCE_SKILLLINE = 29 --(event, pPlayer, SkillId, SkillLevel) | SERVER_HOOK_ADVANCE_SKILLLINE = 29 --(event, pPlayer, SkillId, SkillLevel) | ||
SERVER_HOOK_DUEL_FINISHED = 30 --(event, pWinner, pLoser) | SERVER_HOOK_DUEL_FINISHED = 30 --(event, pWinner, pLoser) |
Latest revision as of 23:24, 11 June 2013
Main Page LuaArcEmu Website ArcEmu Forum Bug Tracker |
Contents |
Register Quest Events
Quest callbacks are made by using the function RegisterQuestEvent(QuestId, EventId, function)
QUEST_EVENT_ON_ACCEPT = 1 --(pPlayer, QuestId) QUEST_EVENT_ON_COMPLETE = 2 --(pPlayer, QuestId) QUEST_EVENT_ON_CANCEL = 3 --(pPlayer) QUEST_EVENT_GAMEOBJECT_ACTIVATE = 4 --(GameObjectId, pPlayer, QuestId) QUEST_EVENT_ON_CREATURE_KILL = 5 --(CreatureId, pPlayer, QuestId) QUEST_EVENT_ON_EXPLORE_AREA = 6 --(AreaTriggerId, pPlayer, QuestId) QUEST_EVENT_ON_PLAYER_ITEMPICKUP = 7 --(ItemId, Count, pPlayer, QuestId)
Register Unit Events
Unit callbacks are made by using the function RegisterUnitEvent(UnitId, EventId, function)
UNIT_EVENT_ON_ENTER_COMBAT = 1 --(pUnit, event, pAttacker) UNIT_EVENT_ON_LEAVE_COMBAT = 2 --(pUnit, event, pLastTarget) UNIT_EVENT_ON_TARGET_DIED = 3 --(pUnit, event, pDied) UNIT_EVENT_ON_DIED = 4 --(pUnit, event, pLastTarget) UNIT_EVENT_ON_TARGET_PARRIED = 5 --(pUnit, event, pTarget) UNIT_EVENT_ON_TARGET_DODGED = 6 --(pUnit, event, pTarget) UNIT_EVENT_ON_TARGET_BLOCKED = 7 --(pUnit, event, pTarget, pAmount) UNIT_EVENT_ON_TARGET_CRIT_HIT = 8 --(pUnit, event, pTarget, pAmount) UNIT_EVENT_ON_PARRY = 9 --(pUnit, event, pTarget) UNIT_EVENT_ON_DODGED = 10 --(pUnit, event, pTarget) UNIT_EVENT_ON_BLOCKED = 11 --(pUnit, event, pTarget, pAmount) UNIT_EVENT_ON_CRIT_HIT = 12 --(pUnit, event, pTarget, pAmount) UNIT_EVENT_ON_HIT = 13 --(pUnit, event, pTarget, pAmount) UNIT_EVENT_ON_ASSIST_TARGET_DIED = 14 --(pUnit, event, pAssistTarget) UNIT_EVENT_ON_FEAR = 15 --(pUnit, event, pTarget, pSpell) UNIT_EVENT_ON_FLEE = 16 --(pUnit, event, pTarget) UNIT_EVENT_ON_CALL_FOR_HELP = 17 --(pUnit, event) UNIT_EVENT_ON_LOAD = 18 --(pUnit, event) UNIT_EVENT_ON_REACH_WP = 19 --(pUnit, event, pWaypointId, pForwards) UNIT_EVENT_ON_LOOT_TAKEN = 20 --(pUnit, event, pPlayer, pItemId) UNIT_EVENT_ON_AIUPDATE = 21 --(pUnit, event) UNIT_EVENT_ON_EMOTE = 22 --(pUnit, event, pPlayer, pEmote) UNIT_EVENT_ON_DAMAGE_TAKEN = 23 --(pUnit, event, pAttacker, pAmount) UNIT_EVENT_ON_ENTER_VEHICLE = 24 --(pUnit) UNIT_EVENT_ON_EXIT_VEHICLE = 25 --(pUnit) UNIT_EVENT_ON_FIRST_PASSENGER_ENTERED = 26 --(pUnit, Passenger) UNIT_EVENT_ON_VEHICLE_FULL = 27 --(pUnit) UNIT_EVENT_ON_LAST_PASSENGER_LEFT = 28 --(pUnit, Passenger)
Register GameObject Events
GameObject callbacks are made by using the function RegisterGameObjectEvent(GameObjectId, EventId, function)
GAMEOBJECT_EVENT_ON_CREATE = 1 --(pGameObject) GAMEOBJECT_EVENT_ON_SPAWN = 2 --(pGameObject) GAMEOBJECT_EVENT_ON_LOOT_TAKEN = 3 --(pGameObject, event, pLooter, ItemId) GAMEOBJECT_EVENT_ON_USE = 4 --(pGameObject, event, pPlayer) GAMEOBJECT_EVENT_AIUPDATE = 5 --(pGameObject) GAMEOBJECT_EVENT_ON_DESPAWN = 6 -- No arguments passed. GAMEOBJECT_EVENT_ON_DAMAGED = 7, --(pGameObject, damage) GAMEOBJECT_EVENT_ON_DESTROYED = 8, --(pGameObject)
Register Unit Gossip Events
Gossip Event callbacks can be made using any of the following functions. Note that the pUnit in the arguments of these functions variate depending on the register you use.
RegisterUnitGossipEvent(UnitId, EventId, function) (Applies to Creatures only)
RegisterGOGossipEvent(GameObjectId, EventId, function)
RegisterItemGossipEvent(ItemId, EventId, function)
GOSSIP_EVENT_ON_TALK = 1 --(pUnit, event, pPlayer) GOSSIP_EVENT_ON_SELECT_OPTION = 2 --(pUnit, event, pPlayer, id, intid, code) GOSSIP_EVENT_ON_END = 3 --(pUnit, event) GAMEOBJECT_GOSSIP_EVENT_ON_TALK = 4 --(pGameObject, event, pPlayer) -- Use this one instead #1
Register Dummy Spell Event
Dummy Spell callbacks can be made by using the function RegisterDummySpell(SpellId, function)
--(spellIndex, pSpell)
Register Instance Events
Instance Hook callbacks can be made by using the function RegisterInstanceEvent(MapId, EventId, function)
INSTANCE_EVENT_ON_PLAYER_DEATH = 1 --(InstanceID, pPlayer, pKiller) INSTANCE_EVENT_ON_PLAYER_ENTER = 2 --(InstanceID, pPlayer) INSTANCE_EVENT_ON_AREA_TRIGGER = 3 --(InstanceID, pPlayer, nAreaId) INSTANCE_EVENT_ON_ZONE_CHANGE = 4 --(InstanceID, pPlayer, nNewZone, nOldZone) INSTANCE_EVENT_ON_CREATURE_DEATH = 5 --(InstanceID, pVictim, pKiller) INSTANCE_EVENT_ON_CREATURE_PUSH = 6 --(InstanceID, pUnit) {AKA "OnSpawn" but for within an instance} INSTANCE_EVENT_ON_GO_ACTIVATE = 7 --(InstanceID, pGo, pPlayer) INSTANCE_EVENT_ON_GO_PUSH = 8 --(InstanceID, pGo) {AKA "OnSpawn" but for within an instance} INSTANCE_EVENT_ONLOAD = 9 --(InstanceID) {When the instance is created} INSTANCE_EVENT_DESTROY = 10 --(InstanceID) {When the instance is destroyed, happens when the instance resets.}
Register Server Hooks
Server Hook callbacks can be made by using the function RegisterServerHook(EventId, function)
SERVER_HOOK_NEW_CHARACTER = 1 --(event, pName, int Race, int Class) SERVER_HOOK_KILL_PLAYER = 2 --(event, pKiller, pVictim) SERVER_HOOK_FIRST_ENTER_WORLD = 3 --(event, pPlayer) / a new created character enters for first time the world SERVER_HOOK_ENTER_WORLD = 4 --(event, pPlayer) / a character enters the world (login) or moves to another map SERVER_HOOK_GUILD_JOIN = 5 --(event, pPlayer, str GuildName) SERVER_HOOK_DEATH = 6 --(event, pPlayer) SERVER_HOOK_REPOP = 7 --(event, pPlayer) SERVER_HOOK_EMOTE = 8 --(event, pPlayer, pUnit, EmoteId) SERVER_HOOK_ENTER_COMBAT = 9 --(event, pPlayer, pTarget) SERVER_HOOK_CAST_SPELL = 10 --(event, pPlayer, SpellId, pSpellObject) SERVER_HOOK_TICK = 11 -- No arguments passed. SERVER_HOOK_LOGOUT_REQUEST = 12 --(event, pPlayer) SERVER_HOOK_LOGOUT = 13 --(event, pPlayer) SERVER_HOOK_QUEST_ACCEPT = 14 --(event, pPlayer, QuestId, pQuestGiver) SERVER_HOOK_ZONE = 15 --(event, pPlayer, ZoneId, OldZoneId) SERVER_HOOK_CHAT = 16 --(event, pPlayer, str Message, Type, Language, Misc) SERVER_HOOK_LOOT = 17 --(event, pPlayer, pTarget, Money, ItemId) SERVER_HOOK_GUILD_CREATE = 18 --(event, pPlayer, pGuildName) SERVER_HOOK_ENTER_WORLD_2 = 19 --(event, pPlayer) / a character enters the world (login) SERVER_HOOK_CHARACTER_CREATE = 20 --(event, pPlayer) SERVER_HOOK_QUEST_CANCELLED = 21 --(event, pPlayer, QuestId) SERVER_HOOK_QUEST_FINISHED = 22 --(event, pPlayer, QuestId, pQuestGiver) SERVER_HOOK_HONORABLE_KILL = 23 --(event, pPlayer, pKilled) SERVER_HOOK_ARENA_FINISH = 24 --(event, pPlayer, str TeamName, bWinner, bRated) SERVER_HOOK_OBJECTLOOT = 25 --(event, pPlayer, pTarget, Money, ItemId) SERVER_HOOK_AREATRIGGER = 26 --(event, pPlayer, AreaTriggerId) SERVER_HOOK_POST_LEVELUP = 27 --(event, pPlayer) SERVER_HOOK_PRE_DIE = 28 --(event, pKiller, pDied) SERVER_HOOK_ADVANCE_SKILLLINE = 29 --(event, pPlayer, SkillId, SkillLevel) SERVER_HOOK_DUEL_FINISHED = 30 --(event, pWinner, pLoser) SERVER_HOOK_AURA_REMOVED = 31 --(event, pAuraObject) SERVER_HOOK_RESURRECT = 32 --(event, pPlayer)