diff --git a/Perl-API.md b/Perl-API.md index 479460a..60683ba 100644 --- a/Perl-API.md +++ b/Perl-API.md @@ -95,87 +95,85 @@ Spells will load a script on the first event that triggers them and will load on # Perl Sub Events -* A full list can always be found in the EQEmu sourceĀ [https://github.com/EQEmu/Server/blob/master/zone/embparser.cpp](https://github.com/EQEmu/Server/blob/master/zone/embparser.cpp) +A full list can always be found in the EQEmu sourceĀ [https://github.com/EQEmu/Server/blob/master/zone/embparser.cpp](https://github.com/EQEmu/Server/blob/master/zone/embparser.cpp) -``` -sub EVENT_AGGRO # Triggered when a mob aggros a client. -sub EVENT_AGGRO_SAY # Triggered when a mob is targeted, the player types something, and NPC is in combat. -sub EVENT_ATTACK # Triggered when the NPC is attacked. -sub EVENT_AUGMENT_ITEM # Triggered when a client augments an item. -sub EVENT_AUGMENT_INSERT # Triggered when a client inserts an augment into an item. -sub EVENT_AUGMENT_REMOVE # Triggered when a client removes an augment from an item. -sub EVENT_CAST # Triggered when a client casts a spell. -sub EVENT_CAST_BEGIN # Triggered when a client begins to cast a spell. -sub EVENT_CAST_ON # Triggered when a player casts a spell on a player or NPC. -sub EVENT_CLICKDOOR # Triggered when the client clicks on a door object. -sub EVENT_CLICK_OBJECT # Triggered when the client clicks on an object. -sub EVENT_COMBAT # Triggered when an NPC enters or leaves combat. -sub EVENT_COMBINE_FAILURE # Triggered when a combine is unsuccessful. -sub EVENT_COMBINE_SUCCESS # Triggered when a combine is successful. -sub EVENT_COMMAND # Triggered when a player says anything like a command. -sub EVENT_CONNECT # Triggered when a player connects to the world. -sub EVENT_DEATH # Triggered when the NPC dies. Fires before death finishes. -sub EVENT_DEATH_COMPLETE # Triggered when the NPC dies. -sub EVENT_DESTROY_ITEM # Triggered when a client destroys an item. -sub EVENT_DISCONNECT # Triggered when a player disconnects from the world. -sub EVENT_DISCOVER_ITEM # Triggered when an item is discovered. -sub EVENT_DROP_ITEM # Triggered when a client drops an item. -sub EVENT_DUEL_LOSE # Triggered when a client loses a duel. -sub EVENT_DUEL_WIN # Triggered when a client wins a duel. -sub EVENT_ENTER # Triggered by any client who enters a mob's proximity. -sub EVENT_ENTER_AREA # Triggered when a client enters the area of a mob. -sub EVENT_ENTERZONE # Triggered when a player enters the zone. -sub EVENT_EQUIP_ITEM # Triggered when a player equips an item. -sub EVENT_EXIT # Triggered by any client who leaves a mob's proximity. -sub EVENT_FEIGN_DEATH # Triggered when a client feign death. -sub EVENT_FISH_FAILURE # Triggered when a client fails at fishing. -sub EVENT_FISH_START # Triggered when a client starts fishing. -sub EVENT_FISH_SUCCESS # Triggered when a client succeeds at fishing. -sub EVENT_FORAGE_FAILURE # Triggered when a client fails at foraging. -sub EVENT_FORAGE_SUCCESS # Triggered when a client succeeds at foraging. -sub EVENT_GROUP_CHANGE # Triggered when a group change occurs. -sub EVENT_HATE_LIST # Triggered when a mob's hate list is changed. -sub EVENT_HP # Triggered by a mob's HP dropping below a threshold. -sub EVENT_ITEM # Triggered when an item or money is turned into the mob. -sub EVENT_ITEM_CLICK # Triggered when an item is clicked. -sub EVENT_ITEM_CLICK_CAST # Triggered when a client casts the click effect on an item. -sub EVENT_ITEM_ENTER_ZONE # Called when an item that would trigger EVENT_SCALE_CALC is in the inventory when a player zones in. -sub EVENT_ITEM_TICK # Triggered when the click effect of an item ticks. -sub EVENT_KILLED_MERIT # Triggered on NPC death when a client is in a group credited with doing the most damage to said loot table NPC. -sub EVENT_LEAVE_AREA # Triggered when a client leaves a mob's area. -sub EVENT_LEVEL_UP # Triggered when the player gains a level. -sub EVENT_LOOT # Triggered when player successfully loots an item from a corpse. -sub EVENT_NPC_SLAY # Triggered when an NPC slays another NPC. -sub EVENT_PLAYER_PICKUP # Triggered when a player picks up an object from the ground. -sub EVENT_POPUPRESPONSE # Used with quest::popup. -sub EVENT_PROXIMITY_SAY # Triggered if the client enters a mob's proximity and uses the appropriate text trigger supplied beneath this event. (set quest::enable_proximity_say() and param 7 in q:set_prox) -sub EVENT_RESPAWN # Triggered on respawn -sub EVENT_SAY # Triggered when a mob is targeted and the player types something. -sub EVENT_SCALE_CALC # Triggered when an item is equipped to scale the item. -sub EVENT_SIGNAL # Triggered by a call to quest::signal() or quest::signalwith(). -sub EVENT_SLAY # Triggered whenever an NPC kills someone. -sub EVENT_SPAWN # Triggered when the NPC spawns. -sub EVENT_SPELL_EFFECT_CLIENT # Triggered when the spell lands on a client. -sub EVENT_SPELL_EFFECT_NPC # Triggered when the spell lands on an NPC. -sub EVENT_SPELL_BUFF_TIC_CLIENT # Triggered when the spell ticks on a client. -sub EVENT_SPELL_BUFF_TIC_NPC # Triggered when the spell ticks on an NPC. -sub EVENT_SPELL_EFFECT_TRANSLOCATE_COMPLETE # Triggered when translocation is complete. -sub EVENT_SPELL_FADE # Triggered when a spell fades. -sub EVENT_TARGET_CHANGE # Triggered when a mob changes their current target or clears it. -sub EVENT_TASKACCEPTED # Triggered when a player accepts a task from the task selector window. -sub EVENT_TASK_COMPLETE # Triggered when a player completes a task. -sub EVENT_TASK_FAIL # Triggered when a player fails a task. -sub EVENT_TASK_STAGE_COMPLETE # Triggered when a task stage is completed. -sub EVENT_TASK_UPDATE # Triggered when a player's task is updated. -sub EVENT_TIMER # Triggered by a quest::settimer(). -sub EVENT_TRADE # Triggered by beginning a trade. -sub EVENT_UNAUGMENT_ITEM # Triggered when a client removes an augment from an item. -sub EVENT_UNEQUIP_ITEM # Triggered when a client unequips an item. -sub EVENT_WAYPOINT_ARRIVE # Triggered when a mob arrives at a waypoint. -sub EVENT_WAYPOINT_DEPART # Triggered when a mob leaves a waypoint. -sub EVENT_WEAPON_PROC # Triggered when a weapon procs. -sub EVENT_ZONE # Triggered when a player zones. -``` +* sub [EVENT_AGGRO](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_aggro) # Triggered when a mob aggros a client. +* sub [EVENT_AGGRO_SAY](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_aggro_say) # Triggered when a mob is targeted, the player types something, and NPC is in combat. +* sub [EVENT_ATTACK](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_attack) # Triggered when the NPC is attacked. +* sub [EVENT_AUGMENT_ITEM](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_augment_item) # Triggered when a client augments an item. +* sub [EVENT_AUGMENT_INSERT](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_augment_insert) # Triggered when a client inserts an augment into an item. +* sub [EVENT_AUGMENT_REMOVE](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_augment_remove) # Triggered when a client removes an augment from an item. +* sub [EVENT_CAST](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_cast) # Triggered when a client casts a spell. +* sub [EVENT_CAST_BEGIN](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_cast_begin) # Triggered when a client begins to cast a spell. +* sub [EVENT_CAST_ON](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_cast_on) # Triggered when a player casts a spell on a player or NPC. +* sub [EVENT_CLICKDOOR](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_clickdoor) # Triggered when the client clicks on a door object. +* sub [EVENT_CLICK_OBJECT](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_click_object) # Triggered when the client clicks on an object. +* sub [EVENT_COMBAT](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_combat) # Triggered when an NPC enters or leaves combat. +* sub EVENT_COMBINE_FAILURE # Triggered when a combine is unsuccessful. +* sub EVENT_COMBINE_SUCCESS # Triggered when a combine is successful. +* sub EVENT_COMMAND # Triggered when a player says anything like a command. +* sub EVENT_CONNECT # Triggered when a player connects to the world. +* sub EVENT_DEATH # Triggered when the NPC dies. Fires before death finishes. +* sub EVENT_DEATH_COMPLETE # Triggered when the NPC dies. +* sub EVENT_DESTROY_ITEM # Triggered when a client destroys an item. +* sub EVENT_DISCONNECT # Triggered when a player disconnects from the world. +* sub EVENT_DISCOVER_ITEM # Triggered when an item is discovered. +* sub EVENT_DROP_ITEM # Triggered when a client drops an item. +* sub EVENT_DUEL_LOSE # Triggered when a client loses a duel. +* sub EVENT_DUEL_WIN # Triggered when a client wins a duel. +* sub EVENT_ENTER # Triggered by any client who enters a mob's proximity. +* sub EVENT_ENTER_AREA # Triggered when a client enters the area of a mob. +* sub EVENT_ENTERZONE # Triggered when a player enters the zone. +* sub EVENT_EQUIP_ITEM # Triggered when a player equips an item. +* sub EVENT_EXIT # Triggered by any client who leaves a mob's proximity. +* sub EVENT_FEIGN_DEATH # Triggered when a client feign death. +* sub EVENT_FISH_FAILURE # Triggered when a client fails at fishing. +* sub EVENT_FISH_START # Triggered when a client starts fishing. +* sub EVENT_FISH_SUCCESS # Triggered when a client succeeds at fishing. +* sub EVENT_FORAGE_FAILURE # Triggered when a client fails at foraging. +* sub EVENT_FORAGE_SUCCESS # Triggered when a client succeeds at foraging. +* sub EVENT_GROUP_CHANGE # Triggered when a group change occurs. +* sub EVENT_HATE_LIST # Triggered when a mob's hate list is changed. +* sub EVENT_HP # Triggered by a mob's HP dropping below a threshold. +* sub EVENT_ITEM # Triggered when an item or money is turned into the mob. +* sub EVENT_ITEM_CLICK # Triggered when an item is clicked. +* sub EVENT_ITEM_CLICK_CAST # Triggered when a client casts the click effect on an item. +* sub EVENT_ITEM_ENTER_ZONE # Called when an item that would trigger EVENT_SCALE_CALC is in the inventory when a player zones in. +* sub EVENT_ITEM_TICK # Triggered when the click effect of an item ticks. +* sub EVENT_KILLED_MERIT # Triggered on NPC death when a client is in a group credited with doing the most damage to said loot table NPC. +* sub EVENT_LEAVE_AREA # Triggered when a client leaves a mob's area. +* sub EVENT_LEVEL_UP # Triggered when the player gains a level. +* sub EVENT_LOOT # Triggered when player successfully loots an item from a corpse. +* sub EVENT_NPC_SLAY # Triggered when an NPC slays another NPC. +* sub EVENT_PLAYER_PICKUP # Triggered when a player picks up an object from the ground. +* sub EVENT_POPUPRESPONSE # Used with quest::popup. +* sub [EVENT_PROXIMITY_SAY](https://github.com/EQEmu/Server/wiki/Perl-API---Perl-Sub-Event-Examples#event_proximity_say) # Triggered if the client enters a mob's proximity and uses the appropriate text trigger supplied beneath this event. (set quest::enable_proximity_say() and param 7 in q:set_prox) +* sub EVENT_RESPAWN # Triggered on respawn +* sub EVENT_SAY # Triggered when a mob is targeted and the player types something. +* sub EVENT_SCALE_CALC # Triggered when an item is equipped to scale the item. +* sub EVENT_SIGNAL # Triggered by a call to quest::signal() or quest::signalwith(). +* sub EVENT_SLAY # Triggered whenever an NPC kills someone. +* sub EVENT_SPAWN # Triggered when the NPC spawns. +* sub EVENT_SPELL_EFFECT_CLIENT # Triggered when the spell lands on a client. +* sub EVENT_SPELL_EFFECT_NPC # Triggered when the spell lands on an NPC. +* sub EVENT_SPELL_BUFF_TIC_CLIENT # Triggered when the spell ticks on a client. +* sub EVENT_SPELL_BUFF_TIC_NPC # Triggered when the spell ticks on an NPC. +* sub EVENT_SPELL_EFFECT_TRANSLOCATE_COMPLETE # Triggered when translocation is complete. +* sub EVENT_SPELL_FADE # Triggered when a spell fades. +* sub EVENT_TARGET_CHANGE # Triggered when a mob changes their current target or clears it. +* sub EVENT_TASKACCEPTED # Triggered when a player accepts a task from the task selector window. +* sub EVENT_TASK_COMPLETE # Triggered when a player completes a task. +* sub EVENT_TASK_FAIL # Triggered when a player fails a task. +* sub EVENT_TASK_STAGE_COMPLETE # Triggered when a task stage is completed. +* sub EVENT_TASK_UPDATE # Triggered when a player's task is updated. +* sub EVENT_TIMER # Triggered by a quest::settimer(). +* sub EVENT_TRADE # Triggered by beginning a trade. +* sub EVENT_UNAUGMENT_ITEM # Triggered when a client removes an augment from an item. +* sub EVENT_UNEQUIP_ITEM # Triggered when a client unequips an item. +* sub EVENT_WAYPOINT_ARRIVE # Triggered when a mob arrives at a waypoint. +* sub EVENT_WAYPOINT_DEPART # Triggered when a mob leaves a waypoint. +* sub EVENT_WEAPON_PROC # Triggered when a weapon procs. +* sub EVENT_ZONE # Triggered when a player zones. ## Text Response Example