Scripting
Last updated
Was this helpful?
Last updated
Was this helpful?
Events are unique, unlike the other interfaces where you have the event in its own script. Each function in the events folder is executed only once.
Monster:onDropLoot(corpse)Parameters:
self: Monster who has died and is now dropping loot.
corpse: Container containing the corpse dropped by the monster.
Return Value:
None
Creature:onChangeOutfit(outfit)Parameters:
self: Creature that is changing their outfit.
outfit: Outfit table.
lookType
lookTypeEx
lookHead
lookBody
lookLegs
lookFeet
lookAddons
lookMount
Return Value:
true: Creature will change outfit.
false: Creature will not be allowed to change outfit.
Creature:onAreaCombat(tile, isAggressive)Parameters:
self: Creature targeting the tile.
tile: Tile being targeted.
isAggressive: True/false depending on if the combat is aggressive or not.
Return Value:
ReturnValue Enum type (seen )
Creature:onTargetCombat(target)Parameters:
self: Creature who's targeting.
target: Target chosen by the creature.
Return Value:
ReturnValue Enum type (seen )
Party:onJoin(player)Parameters:
self: Party userdata.
player: Player attempting to join the party.
Return Value:
true: Player will be allowed to join the party.
false: Player will not be allowed to join the party.
Party:onLeave(player)Parameters:
self: Party userdata.
player: Player attempting to leave the party.
Return Value:
true: Player will be allowed to leave the party.
false: Player will not be allowed to leave the party.
Party:onDisband()Parameters:
self: Party userdata.
Return Value:
true: Party will be disbanded.
false: Party will not be disbanded.
Party:onShareExperience(exp)Parameters:
self: Party userdata.
exp: Base experience.
Return Value:
New calculated experience distributed across all party members.
Player:onBrowseField(position)Parameters:
self: Player attempting to browse field.
position: Position where the player is attempting to browse field at.
Return Value:
true: Player will be able to browse field.
false: Player will be unable to browse field.
Player:onLook(thing, position, distance)Parameters:
self: Player who is looking at the thing.
thing: Thing the player is looking at (Creature / Item)
position: Position where the player is looking at.
distance: Distance from the player and the thing.
Return Value:
None.
Player:onLookInBattleList(creature, distance)Parameters:
self: Player looking at the creature.
creature: Creature being looked at.
distance: Distance in sqm from the player and creature.
Return Value:
None.
Player:onLookInTrade(partner, item, distance)Parameters:
self: Player who is looking at an item in trade.
partner: Trade partner of the player looking at the item (owner of the item).
item: Item being looked at.
distance: Distance in sqm from the player and the item being looked at.
Return Value:
None.
Player:onLookInShop(itemType, count)Parameters:
self: Player looking at the item.
itemType: Item Type of the item being looked at.
count: Item count.
Return Value:
true: Item description will be sent to the player.
false: Item description will not be sent.
Player:onMoveItem(item, count, fromPosition, toPosition, fromCylinder, toCylinder)Parameters:
self: Player attempting moving the item.
item: Item being moved.
count: Item count.
fromPosition: Position where the item is being moved from.
toPosition: Position where the player is attempting to move the item to.
fromCylinder: Cylinder where the item belongs to.
toCylinder: Cylinder where the player is attempting to move the item to.
Return Value:
true: Item will be moved.
false: Item will not be moved.
Player:onItemMoved(item, count, fromPosition, toPosition, fromCylinder, toCylinder)Parameters:
self: Player that moved the item.
item: Item that was moved.
count: Item count.
fromPosition: Position the item was at before it was moved.
toPosition: Position the item is being moved to.
fromCylinder: Cylinder the item belonged to before it was moved.
toCylinder: Cylinder the item was moved to.
Return Value:
None.
Player:onMoveCreature(creature, fromPosition, toPosition)Parameters:
self: Player moving the creature.
creature: Creature being moved by the player.
fromPosition: Position where the creature is currently standing.
toPosition: Position where the player is attempting to move the creature.
Return Value:
true: Creature will be moved.
false: Creature will not be moved.
Player:onReportRuleViolation(targetName, reportType, reportReason, comment, translation)Parameters:
self: Player who is reporting target / targetName.
targetName: Player being reported.
reportReason: Report reason selected from the report window.
comment: Details given by the player.
translation: Translation of the comment.
Return Value:
None.
Player:onReportBug(message, position, category)Parameters:
self: Player reporting the bug.
message: Description of the bug.
position: Position where the bug is being reported from (only valid for BUG_CATEGORY_MAP).
Return Value:
None.
Player:onTurn(direction)Parameters:
self: Player attempting to turn.
Return Value:
true: Player will be able to turn.
false: Player will be unable to turn.
Player:onTradeRequest(target, item)Parameters:
self: Player who initialized the trade request.
target: Target for the trade request.
item: Player's item offer.
Return Value:
true: Trade will be initialized and request will be send to the target.
false: Trade will not be initialized.
Player:onTradeAccept(target, item, targetItem)Parameters:
self: Player who initialized the trade.
target: Target user for the trade.
item: Player's item being transferred.
targetItem: Target's item being transferred.
Return Value:
true: Trade will go through.
false: Trade will not be accepted.
Player:onGainExperience(source, exp, rawExp)Parameters:
self: Player gaining experience.
source: Source of the experience gain, can be nil (through Player:addExperience).
exp: Base experience being gained, meant to be modified and returned.
rawExp: Raw experience, copy of
exp
, meant to be left unmodified.Return Value:
Modified experience value.
Player:onLoseExperience(exp)Parameters:
self: Player losing experience.
exp: Total experience being lost.
Return Value:
Modified experience value.
Player:onGainSkillTries(skill, tries)Parameters:
self: Player gaining the skill tries.
tries: Number of skill tries being applied.
Return Value:
Modified skill try amount.
reportType: ID for the report type (List of IDs found ).
category: Bug category / type (List of categories found )
direction: Direction which the player is attempting to turn to (Direction list found ).
skill: Skill ID that the tries is being applied to (Skill IDs found )