Denizen Script Events


Events are a way to listen to things that happened on your server and respond to them through a script. These usually pair with 'world' script containers.
Learn about how events work in The Beginner's Guide.


Showing all 381 events...

Categories:

Block | Core | Entity | Item | NPC | Player | Server | Vehicle | World | Clientizen | Depenizen | Discord | Paper



Category: Block


Nameblock being built on block
Event Lines <block> being built (on <block>)
Triggerswhen an attempt is made to build a block on another block. Not necessarily caused by players. Does not normally fire when players place blocks. Prefer Event:player places block for that.
Generated Exampleson block being built:
after block being built on light_blue_terracotta:
Has Playerwhen the event is triggered in relation to a player that is causing the block build. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns the LocationTag of the block the player is trying to build on.
<context.old_material> returns the MaterialTag of the block the player is trying to build on.
<context.new_material> returns the MaterialTag of the block the player is trying to build.
Determine"BUILDABLE" to allow the building.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockBuiltScriptEvent.java#L17

Nameblock burns
Event Lines <block> burns
Triggerswhen a block is destroyed by fire.
Generated Examplesafter torch burns:
on dark_prismarine_slab burns:
Contexts<context.location> returns the LocationTag the block was burned at.
<context.material> returns the MaterialTag of the block that was burned.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockBurnsScriptEvent.java#L13

Nameblock cooks|smelts item into item
Event Lines <block> cooks|smelts <item> (into <item>)
Triggerswhen an item is smelted/cooked by a block.
Generated Exampleson block cooks melon_slice:
after lapis_block cooks green_bed:
Contexts<context.location> returns the LocationTag of the block smelting/cooking.
<context.source_item> returns the ItemTag that is being smelted/cooked.
<context.result_item> returns the ItemTag that is the result of the smelting/cooking.
DetermineItemTag to set the item that is the result of the smelting/cooking.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockCooksSmeltsItemScriptEvent.java#L13

Nameblock dispenses item
Event Lines <block> dispenses <item>
Triggerswhen a block dispenses an item.
Generated Exampleson acacia_hanging_sign dispenses dark_oak_slab:
after weeping_vines dispenses item:
Contexts<context.location> returns the LocationTag of the dispenser.
<context.item> returns the ItemTag of the item being dispensed.
<context.velocity> returns a LocationTag vector of the velocity the item will be shot at.
DetermineLocationTag to set the velocity the item will be shot at.
ItemTag to set the item being shot.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockDispensesScriptEvent.java#L14

Nameblock explodes
Event Lines <block> explodes
Triggerswhen a block explodes (like a bed in the nether. For TNT, refer to the "entity explodes" event instead). For a block being destroyed by an explosion, refer to the "block destroyed by explosion" event instead.
Generated Examplesafter smooth_stone explodes:
after block explodes:
Contexts<context.block> returns the location of the exploding block.
<context.blocks> returns a ListTag of blocks that blew up.
<context.strength> returns an ElementTag(Decimal) of the strength of the explosion.
DetermineListTag(LocationTag) to set a new lists of blocks that are to be affected by the explosion.
ElementTag(Decimal) to change the strength of the explosion.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockExplodesScriptEvent.java#L19

Nameblock fades
Event Lines <block> fades
Triggerswhen a block fades, melts, or disappears based on world conditions.
Generated Exampleson block fades:
after cherry_door fades:
Contexts<context.location> returns the LocationTag the block faded at.
<context.material> returns the MaterialTag of the block that faded.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockFadesScriptEvent.java#L13

Nameblock falls
Event Lines <block> falls
Triggerswhen a block begins to fall. Generic form "block falls" (with a material) also fires when the block lands.
Generated Exampleson block falls:
on dark_oak_stairs falls:
Contexts<context.location> returns the location of the block.
<context.entity> returns the entity of the block that fell.
<context.old_material> returns the material that was at the location (eg 'sand' when falling, or 'air' when landing).
<context.new_material> returns the material that will be at the location (eg 'air' when falling, or 'sand' when landing).
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockFallsScriptEvent.java#L15

Nameblock forms
Event Lines <block> forms
Triggerswhen a block is formed based on world conditions, EG, when snow forms in a snow storm or ice forms in a cold biome.
Generated Examplesafter jungle_planks forms:
after potted_warped_roots forms:
Contexts<context.location> returns the LocationTag the block that is forming.
<context.material> returns the MaterialTag of the block that is forming.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockFormsScriptEvent.java#L13

Nameblock grows
Event Lines <block> grows
Triggerswhen a block grows naturally in the world, EG, when wheat, sugar canes, cacti, watermelons or pumpkins grow.
Generated Examplesafter deepslate_coal_ore grows:
after crimson_hyphae grows:
Switchesfrom:<age> to only process the event if the material started at a specific age.
to:<age> to only process the event if the material ended at a specific age.
Contexts<context.location> returns the LocationTag of the block that grew (still at original material state when event fires).
<context.material> returns the MaterialTag of the block's newly grown state.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockGrowsScriptEvent.java#L15

Nameblock ignites
Event Lines block ignites
Triggerswhen a block is set on fire.
Generated Exampleson block ignites:
Switchescause:<cause> to only process the event when it came from a specified cause.
Contexts<context.location> returns the LocationTag of the block that was set on fire.
<context.entity> returns the EntityTag of the entity that ignited the block (if any).
<context.origin_location> returns the LocationTag of the fire block that ignited this block (if any).
<context.cause> returns an ElementTag of the cause of the event: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/block/BlockIgniteEvent.IgniteCause.html.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockIgnitesScriptEvent.java#L15

Nameblock shears entity
Event Lines <block> shears <entity>
Triggerswhen a dispenser shears a nearby sheep.
Generated Examplesafter block shears vehicle:
after block shears entity:
Contexts<context.location> returns the LocationTag of the dispenser.
<context.tool> returns the ItemTag of the item used to shear the entity.
<context.entity> returns the EntityTag of the sheared entity.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockShearEntityScriptEvent.java#L14

Nameblock spreads
Event Lines block spreads
Triggerswhen a block spreads based on world conditions, EG, when fire spreads, or when mushrooms spread, or when vines grow.
Generated Examplesafter block spreads:
on block spreads:
Switchestype:<block> to only run if the block spreading matches the material input.
Contexts<context.source_location> returns the LocationTag of the block that spread.
<context.location> returns the LocationTag of the new block.
<context.material> returns the MaterialTag of the block that spread.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockSpreadsScriptEvent.java#L14

Nameblock tries to dispense item
Event Lines <block> tries to dispense <item>
Triggersbefore a block dispenses an item.
This event fires before the dispenser fully processes a drop, allowing access to the dispensing slot and cancellation of sound effects.
Generated Examplesafter warped_nylium tries to dispense camel_spawn_egg:
on pink_stained_glass_pane tries to dispense item:
Contexts<context.location> returns the LocationTag of the dispenser.
<context.item> returns the ItemTag of the item about to be dispensed.
<context.slot> returns a ElementTag(Number) of the slot that will be dispensed from.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/paper/src/main/java/com/denizenscript/denizen/paper/events/BlockPreDispenseScriptEvent.java#L14

Namebrewing stand brews
Event Lines brewing stand brews
Triggerswhen a brewing stand brews a potion.
Generated Exampleson brewing stand brews:
Contexts<context.location> returns the LocationTag of the brewing stand.
<context.inventory> returns the InventoryTag of the brewing stand's contents.
<context.fuel_level> returns an ElementTag(Number) of the brewing stand's fuel level.
<context.result> returns a ListTag(ItemTag) of the items that will be brewed.
Determine"RESULT:<ListTag(ItemTag)>" to change the items that are brewed.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BrewsScriptEvent.java#L16

Namebrewing stand fueled with item
Event Lines brewing stand fueled (with <item>)
Triggerswhen a brewing stand receives an item to use as fuel.
Generated Examplesafter brewing stand fueled:
Contexts<context.location> returns the LocationTag of the brewing stand.
<context.item> returns the ItemTag being inserted as fuel.
<context.fuel_power> returns the fuel power level being added. Each unit of fuel can power one brewing operation.
<context.consuming> returns a boolean indicating whether the fuel item will be consumed.
Determine"FUEL_POWER:<ElementTag(Number)>" to set the fuel power level to be added.
"CONSUMING" to indicate that the fuel item should be consumed.
"NOT_CONSUMING" to indicate that the fuel item should not be consumed.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BrewingStandFueledScriptEvent.java#L14

Namebrewing starts
Event Lines brewing starts
Triggerswhen a brewing stand starts brewing a potion.
Generated Exampleson brewing starts:
after brewing starts:
Contexts<context.item> returns an ItemTag of the used ingredient to brew potions.
<context.location> returns a LocationTag of the brewing stand's location.
<context.brew_time> returns a DurationTag of the total time it will take to brew the potion.
Determine"BREW_TIME:DurationTag" to set the total time for the potion being brewed.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BrewingStartsScriptEvent.java#L14

Namecauldron level changes|raises|lowers
Event Lines cauldron level changes|raises|lowers
Triggerswhen a cauldron's level changes.
Generated Exampleson cauldron level raises:
after cauldron level changes:
Switchescause:<cause> to only process the event when it came from a specified cause.
Contexts<context.location> returns the LocationTag of the cauldron that changed.
<context.entity> returns the LocationTag of the entity that caused the cauldron level to change (if any).
<context.cause> returns the reason that the cauldron level changed, from 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/block/CauldronLevelChangeEvent.ChangeReason.html
<context.old_level> returns the previous cauldron level.
<context.new_level> returns the new cauldron level.
DetermineElementTag(Number) to set the new level.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/CauldronLevelChangeScriptEvent.java#L14

Namefurnace burns item
Event Lines furnace burns <item>
Triggerswhen a furnace burns an item used as fuel.
Generated Exampleson furnace burns item:
Contexts<context.location> returns the LocationTag of the furnace.
<context.item> returns the ItemTag burnt.
DetermineDurationTag to set the burn time for this fuel.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/FurnaceBurnsItemScriptEvent.java#L15

Namefurnace starts smelting item
Event Lines furnace starts smelting <item>
Triggerswhen a furnace starts smelting an item.
Example
# Sets the total cook time of every item to always be 2 seconds.
on furnace starts smelting item:
- determine 2s
Example
# Sets the total cook time of iron ore to be 2 seconds.
on furnace starts smelting iron_ore:
- determine 2s
Contexts<context.location> returns a LocationTag of the furnace's location.
<context.item> returns an ItemTag of the item being smelted.
<context.recipe_id> returns an ElementTag of the recipe ID being used.
<context.total_cook_time> returns a DurationTag of the total time it will take to smelt the item.
DetermineDurationTag to set the total cook time for the item being smelted.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/FurnaceStartsSmeltingScriptEvent.java#L15

Nameleaves decay
Event Lines leaves decay
<block> decay
Triggerswhen leaves decay.
Generated Examplesafter leaves decay:
on dead_bubble_coral_wall_fan decay:
after deepslate_tile_slab decay:
Contexts<context.location> returns the LocationTag of the leaves.
<context.material> returns the MaterialTag of the leaves.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/LeafDecaysScriptEvent.java#L13

Nameliquid spreads
Event Lines liquid spreads
dragon egg moves
Triggerswhen a liquid block spreads or dragon egg moves.
Generated Examplesafter liquid spreads:
after dragon egg moves:
Switchestype:<block> to only run if the block spreading matches the material input.
Contexts<context.destination> returns the LocationTag the block spread to.
<context.location> returns the LocationTag the block spread location.
<context.material> returns the MaterialTag of the block that spread.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/LiquidSpreadScriptEvent.java#L14

Nameliquid|lava|water level changes
Event Lines liquid|lava|water level changes
Triggerswhen a liquid block's level changes. Note that 'liquid spreads' is fired when a liquid first spreads, and 'level changes' is usually fired when it goes down.
Generated Exampleson lava level changes:
Contexts<context.location> returns the LocationTag the liquid block that has its level changing.
<context.old_material> returns the original MaterialTag data.
<context.new_material> returns the new MaterialTag data. Sometimes can be a different material (such as air).
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/LiquidLevelChangeScriptEvent.java#L13

Namenoteblock plays note
Event Lines noteblock plays note
Triggerswhen a NoteBlock plays a note.
Generated Examplesafter noteblock plays note:
on noteblock plays note:
Switchesinstrument:<instrument> to only process the event if a specific instrument was played.
Contexts<context.location> returns the LocationTag of the note block.
<context.instrument> returns the name of the instrument played, see list at 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Instrument.html.
<context.sound> returns the name of the sound (that fits into Command:playsound) represented by the instrument.
<context.tone> returns the note tone played (A to G).
<context.octave> returns the octave the note is played at (as a number).
<context.sharp> returns a boolean indicating whether the note is sharp.
<context.pitch> returns the computed pitch value (that fits into Command:playsound). Note that volume is always 3.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/NoteBlockPlaysNoteScriptEvent.java#L14

Namepiston extends
Event Lines piston extends
<block> extends
Triggerswhen a piston extends.
Generated Examplesafter piston extends:
after block extends:
after black_wool extends:
Contexts<context.location> returns the LocationTag of the piston.
<context.material> returns the MaterialTag of the piston.
<context.length> returns an ElementTag of the number of blocks that will be moved by the piston.
<context.blocks> returns a ListTag of all block locations about to be moved.
<context.sticky> returns an ElementTag of whether the piston is sticky.
<context.direction> returns a vector location of the direction that blocks will move.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/PistonExtendsScriptEvent.java#L16

Namepiston retracts
Event Lines piston retracts
<block> retracts
Triggerswhen a piston retracts.
Generated Examplesafter piston retracts:
on mangrove_fence_gate retracts:
after poppy retracts:
Contexts<context.location> returns the LocationTag of the piston.
<context.retract_location> returns the new LocationTag of the block that will be moved by the piston if it is sticky.
<context.blocks> returns a ListTag of all block locations about to be moved.
<context.material> returns the MaterialTag of the piston.
<context.sticky> returns an ElementTag of whether the piston is sticky.
<context.direction> returns a vector location of the direction that blocks will move.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/PistonRetractsScriptEvent.java#L16

Nametnt primes
Event Lines tnt primes
Triggerswhen TNT is activated and will soon explode.
Generated Exampleson tnt primes:
after tnt primes:
Has Playerwhen the priming entity is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.entity> returns the entity that primed the TNT, if any.
<context.block> returns the location of the block that primed the TNT, if any.
<context.location> returns the location of the TNT block being primed.
<context.cause> returns the cause of the TNT being primed. Refer to 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/block/TNTPrimeEvent.PrimeCause.html
<context.reason> deprecated in favor of <context.cause> for 1.19+.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/TNTPrimesScriptEvent.java#L16

Nameblock destroyed by explosion
Event Lines <block> destroyed by explosion
Triggerswhen a block is destroyed by an explosion (caused by either an entity or a block exploding).
Generated Exampleson skeleton_skull destroyed by explosion:
after blue_carpet destroyed by explosion:
Switchessource_entity:<matcher> to only fire the event if the source is an entity that matches the given type. Note that "Primed_Tnt" is an entity, not a block.
source_block:<matcher> to only fire the event if the source is a block that matches the given type.
Contexts<context.block> returns the block that exploded.
<context.source_location> returns the location of the source block or entity.
<context.source_entity> returns the entity that exploded, if any.
<context.strength> returns an ElementTag(Decimal) of the strength of the explosion.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Warning(s)This event fires extremely rapidly. One single TNT detonation can destroy a hundred blocks.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockDestroyedByExplosionEvent.java#L19

Nameblock equips item
Event Lines block equips <item>
Triggerswhen armor is equipped to an entity by a dispenser.
Example
# Will cause leather armor to be dispensed like a normal item and not be equipped on an armor stand.
on block equips leather* on:armor_stand:
- determined cancelled
Example
# Will equip a golden helmet if a leather helmet is originally being equipped.
on block equips leather_helmet:
- determine item:golden_helmet
Has Playerwhen the equipped entity is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the equipped entity is an NPC.
Switcheson:<entity> to only process the event if the entity having the armor equipped matches the entity input.
Contexts<context.item> returns the ItemTag of the armor being dispensed.
<context.entity> returns the EntityTag of the entity having the armor equipped.
<context.location> returns the LocationTag of the dispenser.
Determine"ITEM:<ItemTag>" to set the item being dispensed.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Warning(s)Determined armor types must match or armor will be assigned incorrect slots (for example, if the original item was a helmet but the new item is boots, the boots will be assigned to the helmet slot and will not display properly). If you determine a non-armor item, it will be dispensed normally.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockEquipsItemScriptEvent.java#L16

Nameblock physics
Event Lines <block> physics
Triggerswhen a block's physics update.
Generated Examplesafter gray_concrete physics:
after block physics:
Switchesadjacent:<block> to only process the event if the block or an immediately adjacent block (up/down/n/e/s/w) matches the LocationTag matcher specified. This can be useful to prevent blocks from breaking.
Contexts<context.location> returns a LocationTag of the block the physics is affecting.
<context.new_material> returns a MaterialTag of what the block is becoming.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Warning(s)This event may fire very rapidly.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/BlockPhysicsScriptEvent.java#L20

Nameredstone recalculated
Event Lines redstone recalculated
Triggerswhen a redstone wire is recalculated.
Generated Examplesafter redstone recalculated:
on redstone recalculated:
Contexts<context.location> returns the location of the block.
<context.old_current> returns what the redstone power level was.
<context.new_current> returns what the redstone power level is becoming.
DetermineElementTag (Number) set the current value to a specific value.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Warning(s)This event fires very very rapidly!
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/RedstoneScriptEvent.java#L13

Namesponge absorbs water
Event Lines sponge absorbs water
Triggerswhen a sponge block absorbs water.
Generated Examplesafter sponge absorbs water:
on sponge absorbs water:
Contexts<context.location> returns the location of the sponge.
<context.blocks> returns a ListTag(LocationTag) of blocks (of water) that are being removed.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupBlock
Warning(s)this event may in some cases double-fire, requiring usage of the 'ratelimit' command (like 'ratelimit <context.location> 1t') to prevent doubling actions.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/block/SpongeAbsorbsScriptEvent.java#L13



Category: Core


Nameconsole output
Event Lines console output
Triggerswhen any message is printed to console. (Requires Mechanism:system.redirect_logging be set true.)
Generated Examplesafter console output:
on console output:
Contexts<context.message> returns the message that is being printed to console.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupCore
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/ConsoleOutputScriptEvent.java#L9

Namecustom event
Event Lines custom event
Triggerswhen called by a script using Command:customevent.
Example
on custom event id:my_custom_event:
- narrate <context.my_custom_info>
Has PlayerWhen the command is used with a player link. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCWhen the command is used with an NPC link.
Switchesid:<id> to only run the event if the given ID is used. This should almost always be specified.
data:<key>:<value> to only run the event if the given data key matches the given value, using advanced matchers for the given object type (note: the 'customevent' command call has to be careful about object type for this).
Contexts<context.id> returns the ID that was used.
<context.data> returns the MapTag of input data (if any! some events don't have context data).
<context.(key)> returns the value of the input data key, if available.
Determine"OUTPUT:<Anything>" to add that value to the output list (note this is an ADD, not a SET).
GroupCore
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/CustomScriptEvent.java#L16

Namedelta time hourly|minutely|secondly
Event Lines delta time hourly|minutely|secondly
Triggersevery <count> seconds, minutes, or hours of game calculation time. Default repetitions count of 1.
This is specifically based on the rate of time advancement in the game server,
which is not necessarily equivalent to the real passage of time (for example, this event may fire slower if the server is lagging).
For real time, see Event:system time.
Generated Exampleson delta time secondly:
after delta time hourly:
Switchesevery:<count> to only run the event every *count* times (like "on delta time secondly every:5" for every 5 seconds).
Contexts<context.second> returns the exact delta time since system start.
GroupCore
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/DeltaTimeScriptEvent.java#L10

Namepre script reload
Event Lines pre script reload
Triggersimmediately before Denizen scripts are reloaded.
Generated Exampleson pre script reload:
after pre script reload:
GroupCore
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/PreScriptReloadScriptEvent.java#L7

Nameredis pubsub message
Event Lines redis pubsub message
Triggerswhen a subscribed redis connection receives a published message, see Command:Redis.
Generated Examplesafter redis pubsub message:
on redis pubsub message:
Switcheschannel:<channel> to only fire on events advanced-matching the given channel.
Contexts<context.redis_id> returns the connection id that saw this message.
<context.pattern> returns the redis pattern that matched the channel.
<context.channel> returns the actual channel matched.
<context.message> returns the published message.
GroupCore
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/RedisPubSubMessageScriptEvent.java#L9

Namereload scripts
Event Lines reload scripts
script reload
Triggerswhen Denizen scripts are reloaded. Not triggered on initial load.
Generated Examplesafter reload scripts:
after script reload:
on reload scripts:
Switcheshad_error:true/false to only process the event if there either was or was not an error message.
Contexts<context.had_error> returns an ElementTag(Boolean) whether there was an error.
GroupCore
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/ReloadScriptsScriptEvent.java#L9

Namescripts loaded
Event Lines scripts loaded
Triggerswhen Denizen scripts are loaded, but on reloaded and on initial load.
Generated Exampleson scripts loaded:
Switcheshad_error:true/false to only process the event if there either was or was not an error message.
Contexts<context.had_error> returns an ElementTag(Boolean) whether there was an error.
GroupCore
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/ScriptsLoadedScriptEvent.java#L9

Namesystem time hh:mm
Event Lines system time <HH:MM>
system time hourly|minutely|secondly
Triggerswhen the system time changes to the specified value.
The system time is the real world time set in the server's operating system.
It is not necessarily in sync with the game server time, which may vary (for example, when the server is lagging).
For events based on in-game time passage, use Event:delta time or Command:wait.
Example
on system time hourly:
- announce "Whoa an hour passed!"
Example
on system time 12:00:
- announce "Whoa it's noon!"
Example
on system time 03:00:
- announce "Daily restart in 5 minutes!"
- wait 5m
- adjust server restart
Switchesevery:<count> to only run the event every *count* times (like "on system time secondly every:5" for every 5 seconds).
Contexts<context.hour> returns the exact hour of the system time.
<context.minute> returns the exact minute of the system time.
Synonyms (Search Aid)cron
GroupCore
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/SystemTimeScriptEvent.java#L11

Namewebserver web request
Event Lines webserver web request
Triggerswhen a webserver opened by Command:webserver receives a connection request.
Example
# This example supplies a manual response to any of the "/", "/index", or "/index.html" paths.
my_world_script:
    type: world
    data:
        index:
        - <!DOCTYPE html>
        - <html><head><title>Welcome to my site</title></head>
        - <body><h1>Hi!</h1></body></html>
    events:
        on webserver web request port:8080 path:/|/index|/index.html method:get:
        - determine code:200 passively
        - determine headers:[Content-Type=text/html] passively
        - determine raw_text_content:<script.data_key[data.index].separated_by[<n>]>
Example
# This example gives a default response to any pages not handled on port 8080.
on webserver web request port:8080 priority:1000 has_response:false:
- determine code:404 passively
- determine headers:[Content-Type=text/plain] passively
- determine "raw_text_content:Invalid path"
Example
# This example serves a favicon from the local file path "plugins/Denizen/webroot/favicon.ico" with RAM caching to any open web ports.
on webserver web request path:/favicon.ico:
- determine code:200 passively
- determine cached_file:favicon.ico
Switchesport:<#> to only handle requests to a specific port.
path:<path> to only handle requests that match the given advanced-matcher for the path.
method:<method> to only handle requests with the specific method (such as GET or POST).
has_response:<true/false> to only handle requests that do or don't have a response already.
Contexts<context.method> returns the method that was used (such as GET or POST).
<context.path> returns the path requested (such as "/index.html").
<context.port> returns the port connected to.
<context.remote_address> returns the IP address that connected.
<context.query> returns a MapTag of the query data (if no query, returns empty map).
<context.raw_query> returns the raw query input (if no query, returns null).
<context.raw_user_info> returns the raw user info input (if any) (this is a historical HTTP system that allows sending username/password over query).
<context.headers> returns a MapTag of all input headers, where the key is the header name and the value is a ListTag of header values for that name.
<context.body> returns the text content of the body that was sent, if any. Particularly for POST requests.
<context.body_binary> returns the raw binary content body that was sent, if any. Particularly for POST requests.
<context.has_response> returns true if a response body determination (raw_text_content, file, or cached_file) was applied, or false if not.
Determine"CODE:<Element(Number)>" to set a standard web response code, such as 'code:200' for 'OK', or 'code:404' for 'File Not Found'
"HEADERS": + MapTag to set a map of headers, where map keys are the header name and map values are the text of the value, for example headers:[Content-Type=text/html] ... note that header are sometimes case-sensitive.
"RAW_TEXT_CONTENT:<ElementTag>" to set a raw text content body in response. You may determine only one response - raw text, raw binary, a file, or a cached file. You cannot use multiple.
"RAW_BINARY_CONTENT:<BinaryTag>" to set a raw binary content body in response.
"FILE:<ElementTag>" to set a path to a file to send in response. File path must be within the web-root path configured in Denizen/config.yml. Files will be read async.
"CACHED_FILE:<ElementTag>" to set a path to a file to send in response. The content of the file will be cached in RAM until the server restarts. This is useful for files that definitely won't change. First file read will be sync, all others are instant.
"PARSED_FILE:<ElementTag>" - like "FILE:", but this file will be parsed for tags using syntax like "<{util.pi}>" to separate tags from HTML entries.
"CACHED_PARSED_FILE:<ElementTag>" - like "PARSED_FILE" and "CACHED_FILE" combined. Note that the file will be cached, but the results of tags will be handled at runtime still.
GroupCore
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/WebserverWebRequestScriptEvent.java#L29

Namescript generates error
Event Lines script generates error
Triggerswhen a script generates an error.
Generated Examplesafter script generates error:
Contexts<context.message> returns the error message.
<context.queue> returns the queue that caused the error, if any.
<context.script> returns the script that caused the error, if any.
<context.line> returns the line number within the script file that caused the error, if any.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupCore
Warning(s)Abusing this event can cause significant failures in the Denizen debug system. Use only with extreme caution.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/ScriptGeneratesErrorScriptEvent.java#L13

Nameserver generates exception
Event Lines server generates exception
Triggerswhen an exception occurs on the server.
Generated Examplesafter server generates exception:
on server generates exception:
Contexts<context.message> returns the Exception message.
<context.full_trace> returns the full exception trace+message output details.
<context.type> returns the type of the error. (EG, NullPointerException).
<context.queue> returns the queue that caused the exception, if any.
<context.script> returns the script that caused the exception, if any.
<context.line> returns the line number within the script file that caused the exception, if any.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupCore
Warning(s)Abusing this event can cause significant failures in the Denizen debug system. Use only with extreme caution.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/ServerGeneratesExceptionScriptEvent.java#L14

Nametick
Event Lines tick
Triggersevery single tick.
Generated Examplesafter tick:
on tick:
Switchesevery:<count> to only run the event every *count* times (like "every:5" for every 5 ticks).
Contexts<context.tick> how many ticks have passed since the server started.
GroupCore
Warning(s)This event fires very rapidly and is usually not the most ideal way to handle things. Generally, prefer Event:delta time.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/TickScriptEvent.java#L9



Category: Entity


Namecreeper powered because cause
Event Lines creeper powered (because <cause>)
Triggerswhen a creeper is struck by lightning and turned into a powered creeper.
Generated Examplesafter creeper powered because cause:
Contexts<context.entity> returns the EntityTag of the creeper.
<context.lightning> returns the EntityTag of the lightning.
<context.cause> returns an ElementTag of the cause for the creeper being powered. Refer to 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/entity/CreeperPowerEvent.PowerCause.html.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/CreeperPoweredScriptEvent.java#L14

Nameender_dragon changes phase
Event Lines ender_dragon changes phase
<entity> changes phase
Triggerswhen a dragon's combat phase changes.
Generated Exampleson ender_dragon changes phase:
after pillager changes phase:
on living changes phase:
Switchesfrom:<phase> to only process the event if the dragon was previously in the specified phase.
to:<phase> to only process the event if the dragon is changing to the specified phase.
Contexts<context.entity> returns the EntityTag of the dragon.
<context.new_phase> returns an ElementTag of the dragon's new phase. Phases: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/entity/EnderDragon.Phase.html
<context.old_phase> returns an ElementTag of the dragon's old phase. Can be any phase or 'null' in some cases.
DetermineElementTag to change the dragon's new phase.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/DragonPhaseChangeScriptEvent.java#L14

Nameentity breaks hanging because cause
Event Lines <entity> breaks <hanging> (because <cause>)
Triggerswhen a hanging entity (painting, item_frame, or leash_hitch) is broken.
Generated Examplesafter npc breaks hanging:
on npc breaks hanging because cause:
Has Playerwhen the breaker is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the breaker is an npc.
Contexts<context.cause> returns the cause of the entity breaking. Causes list: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/hanging/HangingBreakEvent.RemoveCause.html
<context.breaker> returns the EntityTag that broke the hanging entity, if any.
<context.hanging> returns the EntityTag of the hanging.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityBreaksHangingScriptEvent.java#L19

Nameentity breeds
Event Lines <entity> breeds
Triggerswhen two entities breed.
Generated Examplesafter bee breeds:
after hanging breeds:
Contexts<context.breeder> returns the EntityTag responsible for breeding, if it exists.
<context.child> returns the child EntityTag.
<context.mother> returns the parent EntityTag creating the child. The child will spawn at the mother's location.
<context.father> returns the other parent EntityTag.
<context.item> returns the ItemTag used to initiate breeding, if it exists.
<context.experience> returns the amount of experience granted by breeding.
DetermineElementTag(Number) to set the amount of experience granted by breeding.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityBreedScriptEvent.java#L16

Nameentity casts spell
Event Lines <entity> casts <spell>
Triggerswhen an entity, usually an Evoker or Illusioner, casts a spell.
Generated Exampleson projectile casts spell:
on ocelot casts spell:
Contexts<context.entity> returns the EntityTag of the Spellcaster entity.
<context.spell> returns an ElementTag of the spell used. Valid spells can be found at 🔗https://jd.papermc.io/paper/1.20/org/bukkit/entity/Spellcaster.Spell.html
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntitySpellCastScriptEvent.java#L13

Nameentity changes air level
Event Lines <entity> changes air level
Triggerswhen an entity's air level changes.
Generated Examplesafter chicken changes air level:
after witch changes air level:
Has Playerwhen the entity that's air level has changed is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that's air level has changed is an NPC.
Contexts<context.entity> returns the EntityTag.
<context.air_duration> returns a DurationTag of the entity's new air level.
DetermineDurationTag to set the entity's new air level.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
Synonyms (Search Aid)player loses oxygen, player drowns, player is drowning, oxygen depletion
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityAirLevelChangeScriptEvent.java#L17

Nameentity changes block into block
Event Lines <entity> changes <block> (into <block>)
Triggerswhen an entity changes the material of a block.
Generated Examplesafter projectile changes dirt:
on living changes smooth_sandstone_slab:
Has Playerwhen the entity that changed the block is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.entity> returns the EntityTag that changed the block.
<context.location> returns the LocationTag of the changed block.
<context.old_material> returns the old material of the block.
<context.new_material> returns the new material of the block.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityChangesBlockScriptEvent.java#L17

Nameentity changes food level
Event Lines <entity> changes food level
Triggerswhen an entity's food level changes.
Generated Exampleson entity changes food level:
after entity changes food level:
Has Playerwhen the entity that's food level has changed is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that's food level has changed is an NPC.
Switchesitem:<item> to only process the event if it was triggered by an item that matches the specified item.
Contexts<context.entity> returns the EntityTag.
<context.food> returns an ElementTag(Number) of the entity's new food level.
<context.item> returns an ItemTag of the item that triggered the event, if any.
DetermineElementTag(Number) to set the entity's new food level.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
Synonyms (Search Aid)player hunger depletes
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityFoodLevelChangeScriptEvent.java#L16

Nameentity changes pose
Event Lines <entity> changes pose
Triggerswhen an entity changes its visual pose.
Generated Examplesafter animal changes pose:
on projectile changes pose:
Has Playerwhen the entity that changed its pose is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesold:<pose> to only process the event if the old pose matches the input.
new:<pose> to only process the event if the new pose matches the input.
Contexts<context.entity> returns the EntityTag that changed its pose.
<context.old_pose> returns the name of the old pose. See 🔗https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Pose.html
<context.new_pose> returns the name of the new pose.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityChangesPoseScriptEvent.java#L16

Nameentity combusts
Event Lines <entity> combusts
Triggerswhen an entity catches fire.
Generated Examplesafter entity combusts:
on firework combusts:
Has Playerwhen the entity that catches fire is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that catches fire is an NPC.
Contexts<context.entity> returns the entity that caught fire.
<context.duration> returns the length of the burn.
<context.source> returns the EntityTag or LocationTag that caused the fire, if any. NOTE: Currently, if the source is a LocationTag, the tag will return a null. It is expected that this will be fixed by Spigot in the future.
<context.source_type> returns the type of the source, which can be: ENTITY, LOCATION, NONE.
DetermineDurationTag set the burn duration.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityCombustsScriptEvent.java#L20

Nameentity creates portal
Event Lines <entity> creates portal
Triggerswhen an entity creates a portal. Generally, prefer Event:portal created instead of this.
Generated Examplesafter npc creates portal:
on entity creates portal:
Has Playerif the entity that created the portal is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.entity> returns the EntityTag that created the portal.
<context.portal_type> returns the type of portal: CUSTOM, ENDER, or NETHER.
<context.blocks> returns a list of block locations where the portal is being created.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityCreatePortalScriptEvent.java#L18

Nameentity damaged by entity
Event Lines <entity> damaged by <entity>
<entity> damaged (by <cause>)
<entity> damages <entity>
Triggerswhen an entity is damaged.
Example
on entity damaged:
- announce "A <context.entity.entity_type> took damage!"
Example
on player damages cow:
- announce "<player.name> damaged a cow at <context.entity.location.simple>"
Example
on player damages cow|sheep|chicken with:*_hoe:
- narrate "Whoa there farmer, you almost hurt your farm animals with that farmin' tool!"
- determine cancelled
Example
# This example disambiguates this event from the "vehicle damaged" event for specific vehicle entity types.
on entity damaged type:minecart:
- announce "A minecart took non-vehicular damage!"
Has Playerwhen the damager or damaged entity is a player. Cannot be both. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the damager or damaged entity is an NPC. Cannot be both.
Switcheswith:<item> to only process the event when the item used to cause damage (in the damager's hand) is a specified item.
type:<entity> to only run if the entity damaged matches the entity input.
block:<block-matcher> to only run if the damage came from a block that matches the given material or location matcher.
Contexts<context.entity> returns the EntityTag that was damaged.
<context.damager> returns the EntityTag damaging the other entity, if any.
<context.damager_block> returns the LocationTag of a block that damaged the entity, if any.
<context.cause> returns an ElementTag of reason the entity was damaged - see Language:damage cause for causes.
<context.damage> returns an ElementTag(Decimal) of the amount of damage dealt.
<context.final_damage> returns an ElementTag(Decimal) of the amount of damage dealt, after armor is calculated.
<context.projectile> returns a EntityTag of the projectile, if one caused the event.
<context.damage_type_map> returns a MapTag the damage dealt by a specific damage type with keys: BASE, HARD_HAT, BLOCKING, ARMOR, RESISTANCE, MAGIC, ABSORPTION.
<context.was_critical> returns 'true' if the damage was a critical hit. (Warning: this value is calculated and not guaranteed to be correct if the event is altered).
DetermineElementTag(Decimal) to set the amount of damage the entity receives.
"CLEAR_MODIFIERS" to zero out all damage modifiers other than "BASE", effectively making damage == final_damage.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityDamagedScriptEvent.java#L35

Nameentity dies|death
Event Lines <entity> dies|death
Triggerswhen an entity dies. Note that this fires *after* the entity dies, and thus some data may be lost from the entity.
The death can only be cancelled on Paper.
Generated Exampleson entity dies:
after entity death:
Has Playerwhen the entity that died is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that died is an NPC.
Switchesby:<entity> to only process the event if the killer is known and matches the specified entity matcher.
cause:<cause> to only process the event if it was caused by a specific damage cause.
Contexts<context.entity> returns the EntityTag that died.
<context.damager> returns the EntityTag damaging the other entity, if any.
<context.projectile> returns the EntityTag of a projectile used to kill the entity, if one was used.
<context.message> returns an ElementTag of a player's death message.
<context.cause> returns an ElementTag of the cause of the death. See Language:damage cause for a list of possible damage causes.
<context.drops> returns a ListTag of all pending item drops.
<context.xp> returns an ElementTag of the amount of experience to be dropped.
<context.keep_inventory> returns true if the player dying is set to keep their inventory, false if not, or null if the dying entity is not a player.
DetermineElementTag to change the death message.
"NO_DROPS" to specify that any drops should be removed.
"NO_XP" to specify that any XP orbs should be removed.
ListTag(ItemTag) to specify new items to be dropped.
ElementTag(Number) to specify the new amount of XP to be dropped.
"KEEP_INV" to specify (if a player death) that the inventory should be kept.
"KEEP_LEVEL" to specify (if a player death) that the XP level should be kept.
"NO_MESSAGE" to hide a player death message.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityDeathScriptEvent.java#L27

Nameentity drops item
Event Lines <entity> drops <item>
Triggerswhen an entity drops an item.
Generated Examplesafter entity drops charcoal:
after mob drops elytra:
Has PlayerWhen the entity dropping an item is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.item> returns the ItemTag.
<context.entity> returns a EntityTag of the item.
<context.dropped_by> returns the EntityTag that dropped the item.
<context.location> returns a LocationTag of the item's location.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityDropsItemScriptEvent.java#L18

Nameentity enters portal
Event Lines <entity> enters portal
Triggerswhen an entity enters a portal. That is, when the entity touches a portal block.
Generated Examplesafter warden enters portal:
on entity enters portal:
Has Playerwhen the entity that entered the portal is a player - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that entered the portal is an NPC.
Contexts<context.entity> returns the EntityTag.
<context.location> returns the LocationTag of the portal block touched by the entity.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityEntersPortalScriptEvent.java#L15

Nameentity enters vehicle
Event Lines entity enters vehicle
<entity> enters <entity>
Triggerswhen an entity mounts another entity.
Generated Exampleson entity enters vehicle:
after bat enters entity:
after entity enters vehicle:
on vehicle enters entity:
Has Playerwhen the entity that mounted the vehicle is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that mounted the vehicle is an NPC.
Contexts<context.vehicle> returns the EntityTag of the mounted vehicle.
<context.entity> returns the EntityTag of the entering entity.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityEntersVehicleScriptEvent.java#L17

Nameentity exits portal
Event Lines <entity> exits portal
Triggerswhen an entity exits a portal. This uses Spigot 'EntityPortalExitEvent' which seems to no longer be called on modern server versions.
Generated Examplesafter wither_skeleton exits portal:
on hanging exits portal:
Has Playerwhen the entity that exits the portal is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that exits the portal is an NPC.
Contexts<context.entity> returns the EntityTag.
<context.location> returns the LocationTag of the portal block touched by the entity.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityExitsPortalScriptEvent.java#L15

Nameentity exits vehicle
Event Lines entity exits vehicle
<entity> exits <entity>
Triggerswhen an entity dismounts from another entity.
Generated Examplesafter entity exits vehicle:
on entity exits living:
on entity exits vehicle:
on monster exits fish:
Has Playerwhen the entity that dismounts the vehicle is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that dismounts the vehicle is an NPC.
Contexts<context.vehicle> returns the EntityTag of the mount vehicle.
<context.entity> returns the EntityTag of the exiting entity.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityExitsVehicleScriptEvent.java#L14

Nameentity explodes
Event Lines <entity> explodes
Triggerswhen an entity explodes (primed_tnt, creeper, etc).
Generated Examplesafter animal explodes:
after frog explodes:
Contexts<context.blocks> returns a ListTag of blocks that the entity blew up.
<context.entity> returns the EntityTag that exploded.
<context.location> returns the LocationTag the entity blew up at.
<context.strength> returns an ElementTag(Decimal) of the strength of the explosion.
DetermineListTag(LocationTag) to set a new lists of blocks that are to be affected by the explosion.
ElementTag(Decimal) to change the strength of the explosion.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityExplodesScriptEvent.java#L20

Nameentity explosion primes
Event Lines <entity> explosion primes
Triggerswhen an entity decides to explode.
Generated Exampleson entity explosion primes:
after entity explosion primes:
Contexts<context.entity> returns the EntityTag.
<context.radius> returns an ElementTag of the explosion's radius.
<context.fire> returns an ElementTag with a value of "true" if the explosion will create fire and "false" otherwise.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityExplosionPrimesScriptEvent.java#L15

Nameentity forms block
Event Lines <entity> forms <block>
Triggerswhen a block is formed by an entity.
For example, when a snowman forms snow.
Generated Exampleson skeleton forms yellow_bed:
after entity forms spruce_hanging_sign:
Contexts<context.location> returns the LocationTag the block.
<context.material> returns the MaterialTag of the block.
<context.entity> returns the EntityTag that formed the block.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityFormsBlockScriptEvent.java#L16

Nameentity goes into block
Event Lines <entity> goes into <block>
Triggerswhen an entity enters, and is stored in a block (eg a bee enters a bee nest).
Does not fire when a silverfish "enters" a stone block. Prefer Event:entity changes block for that.
Generated Exampleson mob goes into lime_candle:
after mob goes into green_candle:
Contexts<context.entity> returns the EntityTag.
<context.location> returns the LocationTag of the block entered by the entity.
<context.material> returns the MaterialTag of the block entered by the entity.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityGoesIntoBlockScriptEvent.java#L16

Nameentity heals because cause
Event Lines <entity> heals (because <cause>)
Triggerswhen an entity heals.
Generated Examplesafter entity heals:
after animal heals because cause:
Has Playerwhen the entity that was healed is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that was healed was an NPC.
Contexts<context.amount> returns the amount the entity healed.
<context.entity> returns the EntityTag that healed.
<context.reason> returns the cause of the entity healing. Can be: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/entity/EntityRegainHealthEvent.RegainReason.html
DetermineElementTag(Decimal) to set the amount of health the entity receives.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityHealsScriptEvent.java#L15

Nameentity interacts with block
Event Lines <entity> interacts with <block>
Triggerswhen an entity interacts with a block (EG an arrow hits a button)
Generated Examplesafter experience_orb interacts with smooth_sandstone_stairs:
on entity interacts with potted_red_mushroom:
Contexts<context.location> returns a LocationTag of the block being interacted with.
<context.entity> returns a EntityTag of the entity doing the interaction.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityInteractScriptEvent.java#L16

Nameentity potion effects modified
Event Lines <entity> potion effects modified
<entity> potion effects <change_action>
Triggerswhen an entity's potion effects change.
Generated Examplesafter entity potion effects modified:
on llama potion effects change_action:
after experience_orb potion effects modified:
after entity potion effects change_action:
Has Playerwhen the entity that has changed is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that has changed is an NPC.
Switchescause:<cause> to only process the event when it came from a specified cause.
effect:<effect type> to only process the event when a specified potion effect is applied.
Contexts<context.entity> returns the EntityTag.
<context.cause> returns the cause of the effect change, based on 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/entity/EntityPotionEffectEvent.Cause.html
<context.action> returns the action of the effect changed, which can be 'added', 'changed', 'cleared', or 'removed'
<context.override> returns whether the new potion effect will override the old.
<context.new_effect_data> returns the new potion effect (in the same format as Tag:EntityTag.effects_data) (if any).
<context.old_effect_data> returns the old potion effect (in the same format as Tag:EntityTag.effects_data) (if any).
<context.effect_type> returns the name of the modified potion effect type.
Determine"OVERRIDE:<ElementTag(Boolean)>" to set whether the new potion effect should override.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityPotionEffectScriptEvent.java#L17

Nameentity resurrected
Event Lines <entity> resurrected
Triggerswhen an entity dies and is resurrected by a totem.
Generated Examplesafter entity resurrected:
Has Playerwhen the entity being resurrected is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.entity> returns the EntityTag being resurrected.
<context.hand> returns which hand the totem was in during resurrection, if any. Can be either HAND or OFF_HAND. Available only on MC 1.19+.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityResurrectScriptEvent.java#L17

Nameentity shoots bow
Event Lines entity shoots bow
<entity> shoots <item>
Triggerswhen an entity shoots something out of a bow.
Generated Examplesafter entity shoots bow:
after npc shoots iron_axe:
after entity shoots waxed_exposed_cut_copper:
Has Playerwhen the entity that shot the bow is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that shot the bow is an NPC.
Contexts<context.entity> returns the EntityTag that shot the bow.
<context.projectile> returns a EntityTag of the projectile.
<context.bow> returns the ItemTag of the bow used to shoot.
<context.force> returns the force of the shot.
<context.item> returns an ItemTag of the shot projectile, if any.
<context.hand> returns "HAND" or "OFF_HAND" for which hand the bow was in.
DetermineListTag(EntityTag) to change the projectile(s) being shot. (Note that in certain cases, determining an arrow may not be valid).
"KEEP_ITEM" to keep the projectile item on shooting it.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityShootsBowScriptEvent.java#L26

Nameentity tamed
Event Lines entity tamed
<entity> tamed
player tames entity
player tames <entity>
Triggerswhen an entity is tamed.
Generated Examplesafter entity tamed:
after skeleton tamed:
after player tames entity:
after player tames minecart_command:
on minecart_command tamed:
on player tames entity:
on player tames leash_hitch:
Has Playerwhen a player tames an entity and using the 'players tames entity' event. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.entity> returns a EntityTag of the tamed entity.
<context.owner> returns a EntityTag of the owner.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityTamesScriptEvent.java#L15

Nameentity targets entity because cause
Event Lines <entity> targets (<entity>) (because <cause>)
Triggerswhen an entity targets a new entity - usually a hostile mob preparing to attack something.
Generated Exampleson villager targets:
after entity targets tadpole:
Has Playerwhen the entity being targetted is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.entity> returns the targeting entity.
<context.reason> returns the reason the entity changed targets. Refer to 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/entity/EntityTargetEvent.TargetReason.html.
<context.target> returns the targeted entity.
DetermineEntityTag to make the entity target a different entity instead.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityTargetsScriptEvent.java#L16

Nameentity teleports
Event Lines entity teleports
<entity> teleports
Triggerswhen an entity teleports.
Generated Exampleson entity teleports:
after entity teleports:
Has Playerwhen the entity being teleported is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity being teleported is an NPC.
Switchescause:<cause> to only process the event when it came from a specified cause.
Contexts<context.entity> returns the EntityTag.
<context.origin> returns the LocationTag the entity teleported from.
<context.destination> returns the LocationTag the entity teleported to.
<context.cause> returns an ElementTag of the teleport cause - see Language:teleport cause for causes.
Determine"ORIGIN:<LocationTag>" to change the location the entity teleported from.
"DESTINATION:<LocationTag>" to change the location the entity teleports to.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityTeleportScriptEvent.java#L32

Nameentity toggles|starts|stops gliding
Event Lines <entity> toggles|starts|stops gliding
Triggerswhen an entity starts or stops gliding.
Generated Examplesafter entity starts gliding:
after animal starts gliding:
Has Playerwhen the entity is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity is an NPC.
Contexts<context.entity> returns the EntityTag of this event.
<context.state> returns an ElementTag(Boolean) with a value of "true" if the entity is now gliding and "false" otherwise.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityGlideScriptEvent.java#L15

Nameentity toggles|starts|stops swimming
Event Lines <entity> toggles|starts|stops swimming
Triggerswhen an entity starts or stops swimming.
Generated Exampleson player stops swimming:
on monster toggles swimming:
Has Playerwhen the entity is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity is an NPC.
Contexts<context.entity> returns the EntityTag of this event.
<context.state> returns an ElementTag(Boolean) with a value of "true" if the entity is now swimming and "false" otherwise.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntitySwimScriptEvent.java#L15

Nameentity transforms
Event Lines entity transforms
<entity> transforms (into <entity>)
Triggerswhen an entity transforms into different entities (including villager infections, slime splitting, etc).
Generated Examplesafter entity transforms:
after animal transforms into fish:
on fish transforms into mob:
Switchesbecause:<reason> to only process the event if a specific reason caused the transformation.
Contexts<context.entity> returns the old entity that was transformed from.
<context.new_entities> returns a list of new entities that were transformed into.
<context.cause> returns the reason for transformation, from 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/entity/EntityTransformEvent.TransformReason.html.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityTransformScriptEvent.java#L15

Nameentity unleashed because reason
Event Lines <entity> unleashed (because <reason>)
Triggerswhen an entity is unleashed.
Generated Examplesafter firework unleashed:
after villager unleashed because reason:
Has NPCwhen the entity being unleashed is an NPC.
Contexts<context.entity> returns the EntityTag.
<context.reason> returns an ElementTag of the reason for the unleashing.
Reasons include DISTANCE, HOLDER_GONE, PLAYER_UNLEASH, and UNKNOWN
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityUnleashedScriptEvent.java#L13

Nameexperience bottle breaks
Event Lines experience bottle breaks
Triggerswhen a thrown experience bottle breaks.
Generated Examplesafter experience bottle breaks:
Contexts<context.entity> returns the EntityTag of the thrown experience bottle.
<context.experience> returns the amount of experience to be spawned.
<context.show_effect> returns whether the effect should be shown.
Determine"EXPERIENCE:<ElementTag(Number)>" to specify the amount of experience to be created.
"EFFECT:<ElementTag(Boolean)>" to specify if the particle effects will be shown.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/ExperienceBottleBreaksScriptEvent.java#L14

Namefirework bursts
Event Lines firework bursts
Triggerswhen a firework bursts (explodes).
Generated Examplesafter firework bursts:
on firework bursts:
Contexts<context.entity> returns the firework that exploded.
<context.item> returns the firework item.
<context.location> returns the LocationTag the firework exploded at.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/FireworkBurstsScriptEvent.java#L16

Namehanging breaks because cause
Event Lines <hanging> breaks (because <cause>)
Triggerswhen a hanging entity (painting, item_frame, or leash_hitch) is broken.
Generated Exampleson hanging breaks:
Contexts<context.cause> returns the cause of the entity breaking. Causes: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/hanging/HangingBreakEvent.RemoveCause.html.
<context.entity> returns the EntityTag that broke the hanging entity, if any.
<context.hanging> returns the EntityTag of the hanging.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/HangingBreaksScriptEvent.java#L16

Namehorse jumps
Event Lines horse jumps
<entity> jumps
Triggerswhen a horse jumps.
Generated Exampleson horse jumps:
after npc jumps:
after horse jumps:
after ender_dragon jumps:
Contexts<context.entity> returns the EntityTag of the horse.
<context.color> returns an ElementTag of the horse's color.
<context.power> returns an ElementTag(Decimal) of the jump's power.
DetermineElementTag(Decimal) to set the power of the jump.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/HorseJumpsScriptEvent.java#L16

Namepig zapped
Event Lines pig zapped
Triggerswhen a pig is zapped by lightning and turned into a pig zombie.
Generated Exampleson pig zapped:
after pig zapped:
Contexts<context.pig> returns the EntityTag of the pig.
<context.pig_zombie> returns the EntityTag of the pig zombie.
<context.lightning> returns the EntityTag of the lightning.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
Synonyms (Search Aid)pig struck by lightning, pig electrocuted, pig lightning strike, pig turns into pig zombie, pig turns into zombie pigman
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/PigZappedScriptEvent.java#L15

Namepiglin barter
Event Lines piglin barter
Triggerswhen a piglin completes a barter.
Generated Exampleson piglin barter:
Switchesinput:<item> to only process the event if the input item matches the given item matcher.
Contexts<context.entity> returns the EntityTag of the piglin.
<context.input> returns the ItemTag of the input item.
<context.outcome> returns a ListTag(ItemTag) of outcome items.
Determine"RESULT:<ListTag(ItemTag)>" to determine the items that are outputted.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/PiglinBarterScriptEvent.java#L15

Nameprojectile hits
Event Lines <projectile> hits
TriggersWhen a projectile hits a block or an entity.
Generated Examplesafter snowball hits:
after arrow hits:
Has Playerwhen the entity that was hit is a player, or when the shooter is a player if no entity was hit. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity that was hit is a npc, or when the shooter is a npc if no entity was hit.
Switchesentity:<entity> to only process the event if an entity got hit, and it matches the specified EntityTag matcher.
block:<block> to only process the event if a block got hit, and it matches the specified LocationTag matcher.
shooter:<entity> to only process the event if the projectile was shot by an entity, and it matches the specified EntityTag matcher.
Contexts<context.projectile> returns an EntityTag of the projectile.
<context.hit_entity> returns an EntityTag of the entity that was hit, if any.
<context.hit_block> returns a LocationTag of the block that was hit, if any.
<context.hit_face> returns a LocationTag vector of the hit normal (like '0,1,0' if the projectile hit the top of a block).
<context.shooter> returns an EntityTag of the entity that shot the projectile, if any.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
Synonyms (Search Aid)entity shoots
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/ProjectileHitScriptEvent.java#L17

Nameprojectile hits block/entity
Event Lines <projectile> hits <block/entity>
<entity> shoots <material> (with <projectile>)
TriggersN/A - deprecated in favor of Event:projectile hits
Generated Examplesafter projectile hits block/entity:
after trident shoots oak_hanging_sign:
on camel shoots acacia_boat with projectile:
GroupEntity
Deprecateduse new 'projectile hits' unified event
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/ProjectileHitScriptEvent.java#L48

Nameprojectile launched
Event Lines projectile launched
<entity> launched
Triggerswhen a projectile is launched.
Generated Exampleson projectile launched:
after monster launched:
after projectile launched:
after minecart_hopper launched:
Contexts<context.entity> returns the projectile.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/ProjectileLaunchedScriptEvent.java#L14

Namesheep regrows wool
Event Lines sheep regrows wool
Triggerswhen a sheep regrows wool.
Generated Examplesafter sheep regrows wool:
Contexts<context.entity> returns the EntityTag of the sheep.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/SheepRegrowsScriptEvent.java#L13

Nameslime splits into #
Event Lines slime splits (into <#>)
Triggerswhen a slime splits into smaller slimes.
Generated Exampleson slime splits into #:
after slime splits:
Contexts<context.entity> returns the EntityTag of the slime.
<context.count> returns an ElementTag(Number) of the number of smaller slimes it will split into.
DetermineElementTag(Number) to set the number of smaller slimes it will split into.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/SlimeSplitsScriptEvent.java#L13

Namespawner spawns entity
Event Lines spawner spawns <entity>
Triggerswhen an entity spawns from a monster spawner.
Generated Examplesafter spawner spawns entity:
on spawner spawns villager:
Switchesspawner:<location> to only process the event if the spawner's location matches.
Contexts<context.entity> returns the EntityTag that spawned.
<context.location> returns the LocationTag the entity will spawn at.
<context.spawner_location> returns the LocationTag of the monster spawner.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntitySpawnerSpawnScriptEvent.java#L16

Namevillager acquires trade
Event Lines villager acquires trade
Triggerswhen a villager acquires a new trade.
Generated Examplesafter villager acquires trade:
Contexts<context.entity> returns the EntityTag of the villager.
<context.trade> returns the TradeTag for the new trade.
DetermineTradeTag to change the new trade.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/VillagerAcquiresTradeScriptEvent.java#L13

Namevillager changes profession
Event Lines villager changes profession
Triggerswhen a villager changes profession.
Generated Exampleson villager changes profession:
after villager changes profession:
Contexts<context.entity> returns the EntityTag of the villager.
<context.profession> returns the name of the new profession. 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/entity/Villager.Profession.html
<context.reason> returns the reason for the change. 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/entity/VillagerCareerChangeEvent.ChangeReason.html
DetermineElementTag to change the profession.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/VillagerChangesProfessionScriptEvent.java#L14

Namevillager replenishes trade
Event Lines villager replenishes trade
Triggerswhen a villager replenishes a trade. A trade being "replenished" means its "uses" value is reset to "0".
Generated Exampleson villager replenishes trade:
after villager replenishes trade:
Contexts<context.entity> returns the EntityTag of the villager.
<context.trade> returns the TradeTag for the trade being replenished.
<context.bonus> returns the number of bonus uses added.
DetermineTradeTag to change the trade being replenished.
ElementTag(Number) to change the number of bonus uses added.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/VillagerReplenishesTradeScriptEvent.java#L14

Namearea effect cloud applies
Event Lines area effect cloud applies
Triggerswhen an area_effect_cloud tries to apply its effect(s) to entities within range.
Generated Exampleson area effect cloud applies:
after area effect cloud applies:
Contexts<context.entity> returns the EntityTag of the area effect cloud.
<context.affected_entities> returns a ListTag of EntityTags affected by the area effect cloud. Note that this can be empty, and only lists which entities are currently being refreshed.
Determine"AFFECTED_ENTITIES:<ListTag(EntityTag)>" to determine the entities that will be affected by the area effect cloud. The list should not contain non-living entities.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupEntity
Warning(s)This runs every 5 ticks if there are any entities in the area effect cloud's bounding box. Prefer Event:entity potion effects modified for listening to normal potion effect changes.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/AreaEffectCloudApplyScriptEvent.java#L14

Nameentity despawns
Event Lines <entity> despawns
Triggerswhen an entity despawns permanently from the world. May fire repeatedly for one entity.
Generated Exampleson entity despawns:
after wither despawns:
Has NPCwhen the entity that despawned is an NPC.
Switchescause:<cause> to only process the event when it came from a specified cause.
Contexts<context.entity> returns the entity that despawned.
<context.cause> returns the reason the entity despawned. Can be: DEATH, CHUNK_UNLOAD, CITIZENS, or OTHER
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Warning(s)this event fires very rapidly.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityDespawnScriptEvent.java#L12

Nameentity enters|exits area
Event Lines <entity> enters|exits <area>
Triggerswhen an entity enters or exits a noted area (cuboid, ellipsoid, or polygon). On Spigot servers, only fires for players. Paper is required for other mob types.
Generated Exampleson entity enters polygon:
on vehicle enters area:
Has PlayerWhen the entity is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.area> returns the area object that was entered or exited.
<context.cause> returns the cause of the event. Can be: WALK, WORLD_CHANGE, JOIN, QUIT, TELEPORT, VEHICLE.
<context.to> returns the location the entity moved to (might not be available in exit events).
<context.from> returns the location the entity moved from (when available, depending on cause).
<context.entity> returns the entity that entered/exited an area.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupEntity
Warning(s)cancelling this event will have different results depending on the cause. Teleporting the entity away 1 tick later might be safer.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/AreaEnterExitScriptEvent.java#L29

Nameentity killed by cause
Event Lines <entity> killed (by <cause>)
<entity> killed (by <entity>)
<entity> kills <entity>
Triggerswhen an entity is killed.
Generated Exampleson mob killed by cause:
after animal killed by lightning:
after area_effect_cloud kills entity:
after frog killed by cause:
on living killed:
after llama kills animal:
Has Playerwhen the killer or entity that was killed is a player. Cannot be both. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the killer or entity that was killed is an NPC. Cannot be both.
Contexts<context.entity> returns the EntityTag that was killed.
<context.cause> returns an ElementTag of reason the entity was damaged - see Language:damage cause for causes.
<context.damage> returns an ElementTag(Decimal) of the amount of damage dealt.
<context.final_damage> returns an ElementTag(Decimal) of the amount of damage dealt, after armor is calculated.
<context.damager> returns the EntityTag damaging the other entity.
<context.projectile> returns a EntityTag of the projectile shot by the damager, if any.
<context.damage_type_map> returns a MapTag the damage dealt by a specific damage type with keys: BASE, HARD_HAT, BLOCKING, ARMOR, RESISTANCE, MAGIC, ABSORPTION.
DetermineElementTag(Decimal) to set the amount of damage the entity receives, instead of dying.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Warning(s)This event may mis-fire in some cases, particularly with plugins or scripts modify the damage from scripts. If you need reliable death tracking, the entity death event may be better.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityKilledScriptEvent.java#L22

Nameentity spawns because cause
Event Lines <entity> spawns (because <cause>)
Triggerswhen an entity spawns.
Generated Exampleson living spawns because cause:
on projectile spawns:
Contexts<context.entity> returns the EntityTag that spawned.
<context.location> returns the location the entity will spawn at.
<context.reason> returns the reason the entity spawned, can be ENTITY_SPAWN or any of: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/entity/CreatureSpawnEvent.SpawnReason.html
<context.spawner_location> returns the location of the mob spawner, when reason is SPAWNER.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Warning(s)This event may fire very rapidly.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntitySpawnScriptEvent.java#L19

Namesheep dyed color
Event Lines sheep dyed (<color>)
Triggerswhen a sheep is dyed.
Generated Examplesafter sheep dyed color:
on sheep dyed:
Contexts<context.entity> returns the EntityTag of the sheep.
<context.color> returns an ElementTag of the color the sheep is being dyed.
DetermineElementTag that matches DyeColor to dye it a different color.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupEntity
Warning(s)Determine color will not update the clientside, use - wait 1t and adjust <context.entity> color:YOUR_COLOR to force-update.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/SheepDyedScriptEvent.java#L15



Category: Item


Nameinventory picks up item
Event Lines <inventory> picks up <item>
Triggerswhen a hopper or hopper minecart picks up an item.
Generated Examplesafter merchant picks up item:
on inventory picks up cooked_cod:
Contexts<context.inventory> returns the InventoryTag that picked up the item.
<context.item> returns the ItemTag.
<context.entity> returns a EntityTag of the item entity.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupItem
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/item/InventoryPicksUpItemScriptEvent.java#L14

Nameitem despawns
Event Lines <item> despawns
Triggerswhen an item entity despawns.
Generated Exampleson pumpkin despawns:
after white_wool despawns:
Contexts<context.item> returns the ItemTag of the entity.
<context.entity> returns the EntityTag.
<context.location> returns the location of the entity to be despawned.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupItem
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/item/ItemDespawnsScriptEvent.java#L14

Nameitem enchanted
Event Lines <item> enchanted
Triggerswhen an item is enchanted.
Generated Examplesafter spruce_hanging_sign enchanted:
on crimson_fence enchanted:
Has Playerwhen the enchanter is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesenchant:<name> to only process the event if any of the enchantments being added match the given name.
Contexts<context.entity> returns the EntityTag of the enchanter (if applicable)
<context.location> returns the LocationTag of the enchanting table.
<context.inventory> returns the InventoryTag of the enchanting table.
<context.item> returns the ItemTag to be enchanted.
<context.button> returns which button was pressed to initiate the enchanting.
<context.cost> returns the experience level cost of the enchantment.
<context.enchants> returns a MapTag of enchantment names to the level that will be applied.
DetermineElementTag(Number) to set the experience level cost of the enchantment.
"RESULT:<ItemTag>" to change the item result (only affects metadata (like enchantments), not material/quantity/etc!).
"ENCHANTS:<MapTag>" to change the resultant enchantments.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupItem
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/item/ItemEnchantedScriptEvent.java#L22

Nameitem merges
Event Lines <item> merges
Triggerswhen an item entity merges into another item entity.
Generated Examplesafter item merges:
after pumpkin_seeds merges:
Contexts<context.item> returns the ItemTag of the entity.
<context.entity> returns the EntityTag.
<context.target> returns the EntityTag being merged into.
<context.location> returns the location of the entity to be spawned.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupItem
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/item/ItemMergesScriptEvent.java#L15

Nameitem moves from inventory to inventory
Event Lines <item> moves from <inventory> (to <inventory>)
Triggerswhen an entity or block moves an item from one inventory to another. (Hopper-style movement, not player-induced movement).
Generated Exampleson shelter_pottery_sherd moves from blast_furnace to enchanting:
on burn_pottery_sherd moves from anvil:
Contexts<context.origin> returns the origin InventoryTag.
<context.destination> returns the destination InventoryTag.
<context.initiator> returns the InventoryTag that initiated the item's transfer.
<context.item> returns the ItemTag that was moved.
DetermineItemTag to set a different item to be moved.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupItem
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/item/ItemMoveScriptEvent.java#L13

Nameitem recipe formed
Event Lines <item> recipe formed
Triggerswhen an item's recipe is correctly formed.
Generated Examplesafter allay_spawn_egg recipe formed:
on item recipe formed:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.inventory> returns the InventoryTag of the crafting inventory.
<context.item> returns the ItemTag to be formed in the result slot.
<context.recipe> returns a ListTag of ItemTags in the recipe.
<context.recipe_id> returns the ID of the recipe that was formed.
<context.is_repair> returns an ElementTag(Boolean) of whether the event was triggered by a tool repair operation rather than a crafting recipe.
DetermineItemTag to change the item that is formed in the result slot.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupItem
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/item/ItemRecipeFormedScriptEvent.java#L22

Nameitem spawns
Event Lines <item> spawns
Triggerswhen an item entity spawns.
Generated Exampleson glow_squid_spawn_egg spawns:
after brown_wool spawns:
Contexts<context.item> returns the ItemTag of the entity.
<context.entity> returns the EntityTag.
<context.location> returns the location of the entity to be spawned.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupItem
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/item/ItemSpawnsScriptEvent.java#L15



Category: NPC


Namenpc opens block
Event Lines npc opens <block>
Triggerswhen an NPC opens a door or gate.
Generated Exampleson npc opens block:
on npc opens acacia_trapdoor:
Has NPCAlways.
Switchesnpc:<npc> to only process the event if the spawned NPC matches.
Contexts<context.location> returns the location of the door or gate opened.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupNPC
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/npc/NPCOpensScriptEvent.java#L17

Namenpc spawns
Event Lines npc spawns
Triggerswhen an NPC spawns.
Generated Examplesafter npc spawns:
on npc spawns:
Has NPCAlways.
Switchesnpc:<npc> to only process the event if the spawned NPC matches.
reason:<reason> to only process the event if the NPC's spawn reason matches. See 🔗https://jd.citizensnpcs.co/net/citizensnpcs/api/event/SpawnReason.html for a list of reasons.
Contexts<context.location> returns the location the entity will spawn at.
<context.reason> returns the reason of the spawn.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupNPC
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/npc/NPCSpawnScriptEvent.java#L16

Namenpc stuck
Event Lines npc stuck
Triggerswhen an NPC's navigator is stuck.
Generated Exampleson npc stuck:
after npc stuck:
Has NPCAlways.
Switchesnpc:<npc> to only process the event if the spawned NPC matches.
Contexts<context.action> returns 'teleport' or 'none'
Determine"NONE" to do nothing.
"TELEPORT" to teleport.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupNPC
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/npc/NPCStuckScriptEvent.java#L16

Namenpc begins|completes|cancels navigation
Event Lines npc begins|completes|cancels navigation
Triggerswhen an NPC begins, finishes, or cancels navigating.
Generated Examplesafter npc cancels navigation:
Has NPCAlways.
Switchesnpc:<npc> to only process the event if the spawned NPC matches.
ContextsNone
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupNPC
Warning(s)This event may fire very rapidly.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/npc/NPCNavigationScriptEvent.java#L15



Category: Player


Nameblock drops item from breaking
Event Lines block drops item from breaking
<block> drops <item> from breaking
Triggerswhen a items drop from a block due to a player breaking the block in survival mode.
Generated Examplesafter block drops item from breaking:
on block drops item from breaking:
on red_shulker_box drops item from breaking:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns the LocationTag the block was broken at.
<context.material> returns the MaterialTag of the block that was broken.
<context.drop_entities> returns a ListTag of EntityTags of type DROPPED_ITEM. To get the list of ItemTags, just tack ".parse[item]" onto this context tag.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/BlockDropsItemScriptEvent.java#L19

Nameentity picks up item
Event Lines <entity> picks up <item>
<entity> takes <item>
Triggerswhen an entity picks up an item.
Generated Examplesafter firework picks up barrel:
on player takes light_blue_stained_glass_pane:
on fish picks up item:
after small_fireball takes item:
Has Playerwhen the entity picking up the item is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen the entity picking up the item is an npc.
Contexts<context.item> returns an ItemTag of the item being picked up.
<context.entity> returns an EntityTag of the item entity being picked up.
<context.pickup_entity> returns an EntityTag of the entity picking up the item.
<context.location> returns a LocationTag of the item's location.
Determine"ITEM:<ItemTag>" to change the item being picked up.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/EntityPicksUpItemScriptEvent.java#L20

Nameplayer activates riptide
Event Lines player activates riptide
Triggerswhen a player activates the riptide effect.
Generated Exampleson player activates riptide:
after player activates riptide:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.item> returns the ItemTag of the trident.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerRiptideScriptEvent.java#L15

Nameplayer animates animation
Event Lines player animates (<animation>)
Triggerswhen a player performs an animation.
Generated Examplesafter player animates animation:
after player animates:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switcheswith:<item> to only run if an item being swung by a swing animation matches the item-matcher.
Contexts<context.animation> returns the name of the animation, from 🔗https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event/player/PlayerAnimationType.html.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerAnimatesScriptEvent.java#L17

Nameplayer breaks block
Event Lines player breaks block
player breaks <material>
Triggerswhen a player breaks a block.
Generated Exampleson player breaks block:
after player breaks material:
after player breaks block:
after player breaks horn_coral:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switcheswith:<item> to only process the event when the player is breaking the block with a specified item.
Contexts<context.location> returns the LocationTag the block was broken at.
<context.material> returns the MaterialTag of the block that was broken.
<context.xp> returns how much XP will be dropped.
<context.should_drop_items> returns whether the event will drop items.
Determine"NOTHING" to make the block drop no items.
ListTag(ItemTag) to make the block drop a specified list of items.
ElementTag(Number) to set the amount of xp to drop.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
Synonyms (Search Aid)player mines block, player mines ore, player digs block
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerBreaksBlockScriptEvent.java#L21

Nameplayer breaks held item
Event Lines player breaks held item
player breaks held <item>
Triggerswhen a player breaks the item they are holding.
Generated Exampleson player breaks held item:
after player breaks held black_banner:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.item> returns the item that broke.
<context.slot> returns the slot of the item that broke.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerBreaksItemScriptEvent.java#L21

Nameplayer changes armor stand item
Event Lines player changes armor stand item
Triggerswhen a player modifies an armor stand entity.
Generated Exampleson player changes armor stand item:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesfrom:<item> to only process the event if the item on the armor stand being interacted with matches the specified item matcher.
hand:<hand> to only process the event if the player is using a specific hand to interact with the armor stand. Available only on MC versions 1.19+.
to:<item> to only process the event if the item held by the player matches the specified item matcher.
slot:<slot> to only process the event if the armor stand's item slot that was interacted with is the specified slot.
armor_stand:<entity> to only process the event if the armor stand being interacted with matches the specified entity matcher.
Contexts<context.armor_stand_item> returns the ItemTag being interacted with on the armor stand.
<context.entity> returns an EntityTag of the armor stand.
<context.hand> returns an ElementTag of the hand used by the player to interact with the armor stand, can be either HAND or OFF_HAND. Available only on MC versions 1.19+.
<context.player_item> returns the ItemTag held by the player.
<context.slot> returns an ElementTag of the armor stand's item slot that was interacted with. Valid equipment slot values can be found at 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/inventory/EquipmentSlot.html.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerArmorStandManipulateScriptEvent.java#L18

Nameplayer changes gamemode to gamemode
Event Lines player changes gamemode (to <gamemode>)
Triggerswhen a player's gamemode is changed.
Generated Exampleson player changes gamemode to gamemode:
on player changes gamemode:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.gamemode> returns an ElementTag of the gamemode. Game Modes: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/GameMode.html
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerChangesGamemodeScriptEvent.java#L15

Nameplayer changes main hand
Event Lines player changes main hand
Triggerswhen a player changes their main hand.
Generated Examplesafter player changes main hand:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.old_hand> returns the player's old main hand, either LEFT or RIGHT.
<context.new_hand> returns the player's new main hand.
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerChangesMainHandScriptEvent.java#L15

Nameplayer changes sign
Event Lines player changes sign
player changes <material>
Triggerswhen a player changes a sign.
Generated Exampleson player changes sign:
on player changes cyan_candle_cake:
after player changes sign:
after player changes orange_terracotta:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns the LocationTag of the sign.
<context.new> returns the new sign text as a ListTag.
<context.old> returns the old sign text as a ListTag.
<context.material> returns the MaterialTag of the sign.
DetermineListTag to change the lines.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerChangesSignScriptEvent.java#L20

Nameplayer changes world from world to world
Event Lines player changes world (from <world>) (to <world>)
Triggerswhen a player moves to a different world.
Generated Examplesafter player changes world:
on player changes world to world_the_end:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.origin_world> returns the WorldTag that the player was previously on.
<context.destination_world> returns the WorldTag that the player is now in.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerChangesWorldScriptEvent.java#L15

Nameplayer changes xp
Event Lines player changes xp
Triggerswhen a player's experience amount changes.
Generated Exampleson player changes xp:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.amount> returns the amount of changed experience.
DetermineElementTag(Number) to set the amount of changed experience.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerChangesXPScriptEvent.java#L16

Nameplayer click_type clicks item in inventory
Event Lines player (<click_type>) clicks (<item>) in <inventory>
Triggerswhen a player clicks in an inventory. Note that you likely will also want to listen to Event:player drags in inventory.
Generated Exampleson player clicks in inventory:
on player click_type clicks in inventory:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switcheswith:<item> to only process the event if a specified cursor item was used.
in_area:<area> replaces the default 'in:<area>' for this event.
action:<action> to only process the event if a specified action occurred.
slot:<slot> to only process the event if a specified slot or slot_type was clicked. For slot input options, see Language:Slot Inputs.
Contexts<context.item> returns the ItemTag the player has clicked on.
<context.inventory> returns the InventoryTag (the 'top' inventory, regardless of which slot was clicked).
<context.clicked_inventory> returns the InventoryTag that was clicked in.
<context.cursor_item> returns the item the Player is clicking with.
<context.click> returns an ElementTag with the name of the click type. Click type list: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/inventory/ClickType.html
<context.slot_type> returns an ElementTag with the name of the slot type that was clicked. Slot type list: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/inventory/InventoryType.SlotType.html
<context.slot> returns an ElementTag with the number of the slot that was clicked.
<context.raw_slot> returns an ElementTag with the raw number of the slot that was clicked.
<context.is_shift_click> returns true if 'shift' was used while clicking.
<context.action> returns the inventory_action. See Language:Inventory Actions.
<context.hotbar_button> returns an ElementTag of the button pressed as a number, or 0 if no number button was pressed.
DetermineItemTag to set the current item for the event.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerClicksInInventoryScriptEvent.java#L70

Nameplayer closes inventory
Event Lines player closes inventory
player closes <inventory>
Triggerswhen a player closes an inventory. (EG, chests, not the player's main inventory.)
Generated Exampleson player closes inventory:
on player closes merchant:
after player closes npc:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.inventory> returns the InventoryTag.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerClosesInvScriptEvent.java#L18

Nameplayer completes advancement
Event Lines player completes advancement
Triggerswhen a player has completed all criteria in an advancement.
Generated Exampleson player completes advancement:
after player completes advancement:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesname:<name> to only fire if the advancement has the specified name.
Contexts<context.criteria> returns all the criteria present in this advancement.
<context.advancement> returns the completed advancement's minecraft ID key.
<context.message> returns an ElementTag of the advancement message (only on Paper).
DetermineElementTag to change the advancement message (only on Paper).
"NO_MESSAGE" to hide the advancement message (only on Paper).
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerCompletesAdvancementScriptEvent.java#L15

Nameplayer consumes item
Event Lines player consumes item
player consumes <item>
Triggerswhen a player consumes (eats/drinks) an item (like food or potions).
Generated Examplesafter player consumes item:
on player consumes item:
after player consumes mangrove_stairs:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.item> returns the ItemTag.
<context.hand> returns an ElementTag of the hand being used to consume the item. Can be either HAND or OFF_HAND. Requires a 1.19+ server.
DetermineItemTag to change the item being consumed. Use with caution, if the player is eating a stack of items, this will replace the entire stack.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerConsumesScriptEvent.java#L21

Nameplayer crafts item
Event Lines player crafts item
player crafts <item>
Triggerswhen a player fully crafts an item.
Generated Exampleson player crafts item:
on player crafts rabbit_hide:
after player crafts item:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.inventory> returns the InventoryTag of the crafting inventory.
<context.item> returns the ItemTag to be crafted.
<context.amount> returns the amount of the item that will be crafted (usually 1, except when shift clicked. Can be above 64).
<context.recipe> returns a ListTag of ItemTags in the recipe.
<context.recipe_id> returns the ID of the recipe that is being crafted.
<context.click_type> returns an ElementTag with the name of the click type. Click type list: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/inventory/ClickType.html
DetermineItemTag to change the item that is crafted.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerCraftsItemScriptEvent.java#L25

Nameplayer damages block
Event Lines player damages <block>
Triggerswhen a block is damaged by a player.
Generated Examplesafter player damages copper_block:
after player damages purple_stained_glass:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switcheswith:<item> to only process the event when the player is hitting the block with a specified item.
Contexts<context.location> returns the LocationTag the block that was damaged.
<context.material> returns the MaterialTag of the block that was damaged.
Determine"INSTABREAK" to make the block get broken instantly.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerDamagesBlockScriptEvent.java#L16

Nameplayer drags in inventory
Event Lines player drags in inventory
player drags (<item>) (in <inventory>)
Triggerswhen a player drags in an inventory (that is, clicks and then holds the mouse button down while moving the mouse across multiple slots).
Generated Exampleson player drags in inventory:
after player drags stripped_crimson_hyphae:
on player drags zombie_head:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesin_area:<area> replaces the default 'in:<area>' for this event.
drag_type:<type> to only run the event if the given drag type (SINGLE or EVEN) was used.
Contexts<context.item> returns the ItemTag the player has dragged.
<context.inventory> returns the InventoryTag (the 'top' inventory, regardless of which slot was clicked).
<context.clicked_inventory> returns the InventoryTag that was clicked in.
<context.slots> returns a ListTag of the slot numbers dragged through.
<context.raw_slots> returns a ListTag of the raw slot numbers dragged through.
<context.drag_type> returns either SINGLE or EVEN depending on whether the player used their left or right mouse button.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerDragsInInvScriptEvent.java#L24

Nameplayer edits book
Event Lines player edits book
player signs book
Triggerswhen a player edits or signs a book.
Generated Examplesafter player edits book:
on player signs book:
on player edits book:
after player signs book:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.title> returns the name of the book, if any.
<context.pages> returns the number of pages in the book.
<context.book> returns the book item being edited, containing the new page contents.
<context.old_book> returns the book item being edited, containing the old page contents.
<context.signing> returns whether the book is about to be signed.
Determine"NOT_SIGNING" to prevent the book from being signed.
ScriptTag to set the book information to set it to instead.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerEditsBookScriptEvent.java#L23

Nameplayer empties bucket
Event Lines player empties bucket
player empties <item>
Triggerswhen a player empties a bucket.
Generated Exampleson player empties bucket:
after player empties nether_brick_stairs:
after player empties item:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.item> returns the ItemTag of the bucket being emptied (just material, other properties are lost - use 'player.item_in_hand' if you need full data).
<context.location> returns the LocationTag of the block clicked with the bucket.
<context.relative> returns the LocationTag of the block in front of the clicked block.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerEmptiesBucketScriptEvent.java#L17

Nameplayer enters bed
Event Lines player enters bed
Triggerswhen a player enters a bed.
Generated Examplesafter player enters bed:
on player enters bed:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns the LocationTag of the bed.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerEntersBedScriptEvent.java#L15

Nameplayer fills bucket
Event Lines player fills bucket
player fills <item>
Triggerswhen a player fills a bucket.
Generated Examplesafter player fills bucket:
after player fills item:
on player fills item:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.item> returns the ItemTag of the filled bucket.
<context.location> returns the LocationTag of the block clicked with the bucket.
<context.material> returns the MaterialTag of the LocationTag.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerFillsBucketScriptEvent.java#L17

Nameplayer fishes entity while state
Event Lines player fishes (<entity>) (while <state>)
player fishes (<item>) (while <state>)
Triggerswhen a player uses a fishing rod.
Generated Exampleson player fishes entity:
after player fishes item while state:
after player fishes:
after player fishes black_bed while state:
Has PlayerIf the fisher or the caught entity is a player (in most cases, the fisher can be assumed to be a real player). - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCIf the fisher or the caught entity is an NPC.
Switcheswith:<item> to only process the event if the fishing rod is a specified item.
Contexts<context.hook> returns an EntityTag of the hook.
<context.state> returns an ElementTag of the fishing state. Valid states: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/player/PlayerFishEvent.State.html
<context.entity> returns an EntityTag of the entity that got caught.
<context.item> returns an ItemTag of the item gotten, if any.
<context.xp> returns the amount of experience that will drop.
Determine"CAUGHT:<ItemTag>" to change the item that was caught (only if an item was already being caught).
"XP:<ElementTag(Number)>" to change how much experience will drop.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerFishesScriptEvent.java#L22

Nameplayer hears sound
Event Lines player hears sound
Triggerswhen a player receives a sound packet from the server.
Generated Examplesafter player hears sound:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switcheskey:<sound_key> to only process the event if the sound matches the modern Minecraft sound key.
Contexts<context.sound_key> returns an ElementTag of the modern Minecraft sound key.
<context.sound_name> returns an ElementTag of the sound's Bukkit name.
<context.category> returns the name of the category the sound is from.
<context.is_custom> returns 'true' if the sound is custom, otherwise false.
<context.source_entity> returns the entity this sound came from (if any).
<context.location> returns the location the sound will play at.
<context.volume> returns the volume level.
<context.pitch> returns the pitch.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerHearsSoundScriptEvent.java#L20

Nameplayer item takes damage
Event Lines player item takes damage
player <item> takes damage
Triggerswhen the player damages an item.
Generated Exampleson player item takes damage:
after player pumpkin takes damage:
after player item takes damage:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.damage> returns the amount of damage the item has taken.
<context.original_damage> returns the original amount of damage the item would have taken, before any modifications such as the unbreaking enchantment (only on Paper).
<context.item> returns the item that has taken damage.
<context.slot> returns the slot of the item that has taken damage. This value is a bit of a hack and is not reliable.
DetermineElementTag(Number) to set the amount of damage the item will take.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
Synonyms (Search Aid)item durability changes
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerItemTakesDamageScriptEvent.java#L20

Nameplayer joins
Event Lines player joins
player join
Triggerswhen a player joins the server.
Generated Examplesafter player joins:
after player join:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.message> returns an ElementTag of the join message.
DetermineElementTag to change the join message.
"NONE" to cancel the join message.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerJoinsScriptEvent.java#L16

Nameplayer kicked for flying
Event Lines player kicked (for flying)
Triggerswhen a player is kicked from the server.
Generated Exampleson player kicked for flying:
after player kicked:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.message> returns an ElementTag of the kick message sent to all players.
<context.reason> returns an ElementTag of the kick reason.
<context.flying> returns whether the player is being automatically kicked for flying.
Determine"MESSAGE:<ElementTag>" to change the kick message.
"REASON:<ElementTag>" to change the kick reason.
"FLY_COOLDOWN:<DurationTag>" to cancel the automatic fly kick and set its next cooldown.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerKickedScriptEvent.java#L19

Nameplayer leashes entity
Event Lines player leashes entity
player leashes <entity>
Triggerswhen a player leashes an entity.
Generated Examplesafter player leashes entity:
after player leashes projectile:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.entity> returns the EntityTag of the leashed entity.
<context.holder> returns the EntityTag that is holding the leash.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerLeashesEntityScriptEvent.java#L15

Nameplayer leaves bed
Event Lines player leaves bed
Triggerswhen a player leaves a bed.
Generated Examplesafter player leaves bed:
on player leaves bed:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns the LocationTag of the bed.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerLeavesBedScriptEvent.java#L15

Nameplayer levels up from level to level
Event Lines player levels up (from <level>) (to <level>)
Triggerswhen a player levels up.
Generated Examplesafter player levels up from level:
after player levels up to level:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.new_level> returns an ElementTag of the player's new level.
<context.old_level> returns an ElementTag of the player's old level.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerLevelsUpScriptEvent.java#L16

Nameplayer locale change
Event Lines player locale change
Triggerswhen a player changes their locale in their client settings.
Generated Exampleson player locale change:
after player locale change:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.new_locale> returns an ElementTag of the player's new locale.
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerLocaleChangeScriptEvent.java#L14

Nameplayer mends item
Event Lines player mends item
player mends <item>
Triggerswhen an XP orb is used to repair an item with the Mending enchantment in the player's inventory.
Generated Exampleson player mends item:
after player mends tadpole_spawn_egg:
after player mends red_stained_glass_pane:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.item> returns the item that is repaired.
<context.repair_amount> returns how much durability the item recovers.
<context.xp_orb> returns the XP orb that triggered the event.
<context.slot> returns the slot of the item that has been repaired. This value is a bit of a hack and is not reliable.
DetermineElementTag(Number) to set the amount of durability the item recovers.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerMendsItemScriptEvent.java#L18

Nameplayer opens inventory
Event Lines player opens inventory
player opens <inventory>
Triggerswhen a player opens an inventory. (EG, chests, not the player's main inventory.)
Generated Examplesafter player opens inventory:
after player opens location:
after player opens stonecutter:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.inventory> returns the InventoryTag.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerOpensInvScriptEvent.java#L16

Nameplayer picks up launched arrow
Event Lines player picks up launched arrow
Triggerswhen a player picks up a launched arrow projectile entity that is embedded into the ground. Will not necessarily fire for creative players.
Generated Examplesafter player picks up launched arrow:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.arrow> returns the arrow entity.
<context.item> returns the item of the arrow.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerPickupArrowScriptEvent.java#L15

Nameplayer places block
Event Lines player places block
player places <item>
Triggerswhen a player places a block.
Example
on player places block:
Example
after player places torch using:off_hand:
Example
on player places cactus against:sand:
Example
# This example process the event only if the player places any block that isn't tnt.
on player places block type:!tnt:
- announce "<player.name> has placed a block that isn't TNT. Lucky!"
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesusing:<hand_type> to only process the event if the player is using the specified hand type (HAND or OFF_HAND).
against:<location> to only process the event if block that this new block is being placed against matches the specified LocationTag matcher.
type:<material> to only process the event if the block placed matches the MaterialTag matcher input.
Contexts<context.location> returns the LocationTag of the block that was placed.
<context.material> returns the MaterialTag of the block that was placed.
<context.old_material> returns the MaterialTag of the block that was replaced.
<context.item_in_hand> returns the ItemTag of the item in hand.
<context.hand> returns the name of the hand that the block was in (HAND or OFF_HAND).
<context.against> returns the LocationTag of the block this block was placed against.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerPlacesBlockScriptEvent.java#L15

Nameplayer places hanging
Event Lines player places <hanging>
Triggerswhen a hanging entity (painting or itemframe) is placed.
Generated Examplesafter player places hanging:
on player places hanging:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesitem:<item> to only process the event when the hangable item matches the given ItemTag matcher.
Contexts<context.hanging> returns the EntityTag of the hanging.
<context.location> returns the LocationTag of the block the hanging was placed on.
<context.item> returns the ItemTag that was placed.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerPlacesHangingScriptEvent.java#L17

Nameplayer prepares item enchant
Event Lines player prepares item enchant
player prepares <item> enchant
Triggerswhen a player prepares to enchant an item.
Generated Exampleson player prepares item enchant:
on player prepares netherite_axe enchant:
after player prepares item enchant:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns the LocationTag of the enchanting block.
<context.item> returns the ItemTag to be enchanted.
<context.bonus> returns an ElementTag(Number) of the enchanting bonus available (number of bookshelves).
<context.offers> returns a ListTag of the available enchanting offers, each as a MapTag with keys 'cost', 'enchantment_type', and 'level'.
Determine"OFFERS:<ListTag>" of MapTags to set the offers available. Cannot be a different size list than the size of context.offers.
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerPreparesEnchantScriptEvent.java#L20

Nameplayer quits
Event Lines player quits
player quit
Triggerswhen a player quit the server.
Generated Exampleson player quits:
after player quit:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.message> returns an ElementTag of the quit message.
DetermineElementTag to change the quit message.
"NONE" to cancel the quit message.
Synonyms (Search Aid)player disconnects, player logs off, player leaves
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerQuitsScriptEvent.java#L16

Nameplayer receives commands
Event Lines player receives commands
Triggerswhen the list of available server commands is sent to the player for tab completion.
Generated Exampleson player receives commands:
after player receives commands:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.commands> returns a ListTag of received commands.
DetermineListTag to set the player's available commands. NOTE: It is not possible to add entries to the command list, only remove them.
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerReceivesCommandsScriptEvent.java#L15

Nameplayer receives tablist update
Event Lines player receives tablist update
Triggerswhen a player receives a tablist update.
Generated Examplesafter player receives tablist update:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesmode:add/update/remove to only trigger if the tablist update is the specified mode.
Contexts<context.mode> returns the update mode: 'add', 'remove', 'initialize_chat', 'update_gamemode', 'update_latency', 'update_listed', or 'update_display'. As of 1.19.3, you can also receive update combos like "update_gamemode|update_latency".
<context.uuid> returns the packet's associated UUID.
<context.name> returns the packet's associated name (if any).
<context.display> returns the packet's associated display name (if any).
<context.latency> returns the packet's associated latency (if any).
<context.gamemode> returns the packet's associated gamemode (if any).
<context.skin_blob> returns the packet's associated skin blob (if any).
<context.listed> returns true if the entry should be listed in the tab list, or false if not.
Determine"LATENCY:<ElementTag(Number)>" to change the latency.
"NAME:<ElementTag>" to change the name.
"DISPLAY:<ElementTag>" to change the display name. 'name', 'display' and 'cancelled' determinations require 'Allow restricted actions' in Denizen/config.yml
"GAMEMODE:<ElementTag>" to change the gamemode.
"SKIN_BLOB:<ElementTag>" to change the skin blob.
"LISTED:<ElementTag(Boolean)>" to change whether the entry is listed.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerReceivesTablistUpdateScriptEvent.java#L18

Nameplayer respawns at bed
Event Lines player respawns (at bed)
player respawns elsewhere
Triggerswhen a player respawns.
Generated Exampleson player respawns at bed:
after player respawns elsewhere:
on player respawns elsewhere:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns a LocationTag of the respawn location.
<context.is_bed_spawn> returns a boolean indicating whether the player is about to respawn at their bed.
DetermineLocationTag to change the respawn location.
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerRespawnsScriptEvent.java#L17

Nameplayer scrolls their hotbar
Event Lines player scrolls their hotbar
player holds item
Triggerswhen a player scrolls through their hotbar.
Generated Examplesafter player scrolls their hotbar:
after player holds item:
on player holds item:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesitem:<item> to only process the event when the player is going to hold a specified item.
Contexts<context.new_slot> returns the number of the new inventory slot.
<context.previous_slot> returns the number of the old inventory slot.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/HotbarScrollScriptEvent.java#L15

Nameplayer selects stonecutter recipe
Event Lines player selects stonecutter recipe
Triggerswhen a player selects a recipe in a stonecutter.
Generated Examplesafter player selects stonecutter recipe:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesrecipe_id:<recipe_id> to only process the event if the recipe matches the recipe ID.
Contexts<context.inventory> returns the InventoryTag of the stonecutter inventory.
<context.input> returns an ItemTag of the item in the input slot.
<context.result> returns an ItemTag of the item in the result slot.
<context.recipe_id> returns the ID of the recipe that was selected.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/paper/src/main/java/com/denizenscript/denizen/paper/events/PlayerSelectsStonecutterRecipeScriptEvent.java#L16

Nameplayer shears entity
Event Lines player shears <entity>
player shears <color> sheep
Triggerswhen a player shears an entity.
Generated Exampleson player shears block_display:
after player shears color sheep:
on player shears entity:
on player shears color sheep:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.entity> returns the EntityTag of the sheep.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerShearsScriptEvent.java#L17

Nameplayer smiths item
Event Lines player smiths item
player smiths <item>
Triggerswhen a player upgrades an item on a smithing table.
Generated Exampleson player smiths item:
after player smiths item:
after player smiths golden_sword:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.inventory> returns the InventoryTag of the smithing table inventory.
<context.item> returns the ItemTag after upgrading.
DetermineItemTag to change the item that results from the upgrade.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerSmithsItemScriptEvent.java#L18

Nameplayer stands on material
Event Lines player stands on material
player stands on (<material>)
Triggerswhen a player stands on a physical-interactable block (such as a pressure plate, tripwire, or redstone ore).
Generated Examplesafter player stands on material:
after player stands on:
after player stands on mangrove_wall_sign:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns the LocationTag the player is interacting with.
<context.material> returns the MaterialTag the player is interacting with.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerStandsOnScriptEvent.java#L17

Nameplayer statistic increments
Event Lines player statistic increments
player statistic <statistic> increments
Triggerswhen a player's statistics increment.
Generated Exampleson player statistic increments:
after player statistic statistic increments:
on player statistic statistic increments:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.statistic> returns the statistic that incremented. Statistic names: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Statistic.html
<context.previous_value> returns the old value of the statistic.
<context.new_value> returns the new value of the statistic.
<context.qualifier> returns the qualifier (EntityTag/MaterialTag) if any.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerStatisticIncrementsScriptEvent.java#L18

Nameplayer steers entity
Event Lines player steers entity
player steers <entity>
Triggersevery tick that a player is controlling a vehicle.
Generated Exampleson player steers entity:
after player steers projectile:
after player steers entity:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.entity> returns the EntityTag being steered by the player.
<context.sideways> returns an ElementTag(Decimal) where a positive number signifies leftward movement.
<context.forward> returns an ElementTag(Decimal) where a positive number signifies forward movement.
<context.jump> returns an ElementTag(Boolean) that signifies whether the player is attempting to jump with the entity.
<context.dismount> returns an ElementTag(Boolean) that signifies whether the player is attempting to dismount.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerSteersEntityScriptEvent.java#L16

Nameplayer stops damaging block
Event Lines player stops damaging <block>
Triggerswhen a block stops being damaged by a player.
Example
on player stops damaging block:
- narrate "You were so close to breaking that block! You got this!"
Example
on player stops damaging infested*:
- narrate "It's Silverfish time!"
- spawn silverfish|silverfish|silverfish|silverfish|silverfish <context.location> persistent
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switcheswith:<item> to only process the event when the player stops hitting the block with a specified item.
Contexts<context.location> returns the LocationTag the block no longer being damaged.
<context.material> returns the MaterialTag of the block no longer being damaged.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerStopsDamagingBlockScriptEvent.java#L17

Nameplayer swaps items
Event Lines player swaps items
Triggerswhen a player swaps the items in their main and off hands.
Generated Examplesafter player swaps items:
on player swaps items:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesmain:<item> to only process the event if the item being put into the main hand matches the input item.
offhand:<item> to only process the event if the item being put into the off-hand matches the input item.
Contexts<context.main> returns the ItemTag switched to the main hand.
<context.offhand> returns the ItemTag switched to the off hand.
Determine"MAIN:<ItemTag>" to set the item in the main hand.
"OFFHAND:<ItemTag>" to set the item in the off hand.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerSwapsItemsScriptEvent.java#L17

Nameplayer takes item from furnace
Event Lines player takes item from furnace
player takes <item> from furnace
Triggerswhen a player takes an item from a furnace.
Generated Examplesafter player takes item from furnace:
after player takes white_dye from furnace:
on player takes powder_snow_bucket from furnace:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns the LocationTag of the furnace.
<context.item> returns the ItemTag taken out of the furnace.
DetermineElementTag(Number) to set the amount of experience the player will get.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerTakesFromFurnaceScriptEvent.java#L17

Nameplayer takes item from lectern
Event Lines player takes item from lectern
player takes <item> from lectern
Triggerswhen a player takes a book from a lectern.
Generated Exampleson player takes item from lectern:
on player takes candle from lectern:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns the LocationTag of the lectern.
<context.item> returns the book ItemTag taken out of the lectern.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerTakesFromLecternScriptEvent.java#L17

Nameplayer throws hatching|non-hatching egg
Event Lines player throws (hatching|non-hatching) egg
Triggerswhen a player throws an egg - this event specifically fires when the egg hits, for the initial throw event use Event:projectile launched.
Generated Examplesafter player throws egg:
on player throws non-hatching egg:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.egg> returns the EntityTag of the egg.
<context.is_hatching> returns an ElementTag with a value of "true" if the egg will hatch and "false" otherwise.
DetermineEntityTag to set the type of the hatching entity.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerThrowsEggScriptEvent.java#L17

Nameplayer toggles flying
Event Lines player toggles flying
player starts flying
player stops flying
Triggerswhen a player starts or stops flying.
Generated Exampleson player toggles flying:
after player starts flying:
after player stops flying:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.state> returns an ElementTag(Boolean) with a value of "true" if the player is now flying and "false" otherwise.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerFlyingScriptEvent.java#L15

Nameplayer toggles|starts|stops sneaking
Event Lines player toggles|starts|stops sneaking
Triggerswhen a player starts or stops sneaking.
Generated Exampleson player starts sneaking:
after player toggles sneaking:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.state> returns an ElementTag(Boolean) with a value of "true" if the player is now sneaking and "false" otherwise.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerSneakScriptEvent.java#L15

Nameplayer toggles|starts|stops sprinting
Event Lines player toggles|starts|stops sprinting
Triggerswhen a player starts or stops sprinting.
Generated Exampleson player starts sprinting:
after player starts sprinting:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.state> returns an ElementTag(Boolean) with a value of "true" if the player is now sprinting and "false" otherwise.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerSprintScriptEvent.java#L15

Nameplayer triggers raid
Event Lines player triggers raid
Triggerswhen a player triggers a village raid.
Generated Exampleson player triggers raid:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.raid> returns the raid data. See Language:Raid Event Data.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerTriggersRaidScriptEvent.java#L12

Nameplayer uses portal
Event Lines player uses portal
Triggerswhen a player enters a portal.
Generated Examplesafter player uses portal:
on player uses portal:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesfrom:<block> to only process the event if the block the player teleported from matches the LocationTag matcher provided.
to:<block> to only process the event if the block the player teleported to matches the LocationTag matcher provided.
Contexts<context.from> returns the location teleported from.
<context.to> returns the location teleported to (can sometimes be null).
<context.can_create> returns whether the server will attempt to create a destination portal.
<context.creation_radius> returns the radius that will be checked for a free space to create the portal in.
<context.search_radius> returns the radius that will be checked for an existing portal to teleport to.
DetermineLocationTag to change the destination.
"CAN_CREATE:<ElementTag(Boolean)>" to set whether the server will attempt to create a destination portal.
"CREATION_RADIUS:<ElementTag(Number)>" to set the radius that will be checked for a free space to create the portal in.
"SEARCH_RADIUS:<ElementTag(Number)>" to set the radius that will be checked for an existing portal to teleport to.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerUsesPortalScriptEvent.java#L17

Nameplayer walks over notable
Event Lines player walks over notable
player walks over <location>
Triggerswhen a player walks over a noted location. In most cases, it is preferable to use Event:player enters area with a small cuboid.
Generated Exampleson player walks over notable:
on player walks over location:
after player walks over location:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.notable> returns an ElementTag of the notable location's name.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerWalksOverScriptEvent.java#L18

Nameresource pack status
Event Lines resource pack status
Triggerswhen a player accepts, denies, successfully loads, or fails to download a resource pack.
Generated Examplesafter resource pack status:
on resource pack status:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesstatus:<status> to only process the event when a specific status is returned. Same status names as returned by 'context.status'.
Contexts<context.status> returns an ElementTag of the status. Can be: SUCCESSFULLY_LOADED, DECLINED, FAILED_DOWNLOAD, ACCEPTED.
GroupPlayer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/ResourcePackStatusScriptEvent.java#L13

Nameplayer chats
Event Lines player chats
Triggerswhen a player chats.
Generated Examplesafter player chats:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesmessage:<matcher> to only process the event if the chat message matches an advanced matcher.
Contexts<context.message> returns the player's message as an Element.
<context.format> returns the chat message's raw format.
<context.full_text> returns the full text of the chat message (ie, the written message with the format applied to it).
<context.recipients> returns a list of all players that will receive the chat.
DetermineElementTag to change the message.
"FORMAT:<ScriptTag>" to set the format script the message should use.
"RAW_FORMAT:<ElementTag>" to set the format directly (without a format script). (Use with caution, avoid if possible).
"RECIPIENTS:<ListTag(PlayerTag)>" to set the list of players that will receive the message.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Warning(s)Using this will forcibly sync the chat thread.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/ChatScriptEvent.java#L28

Nameplayer enters|exits biome
Event Lines player enters|exits biome
Triggerswhen a player enters or exits a biome.
Generated Examplesafter player exits biome:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesbiome:<name> to only process the event when a specific biome is being entered.
Contexts<context.from> returns the block location moved from.
<context.to> returns the block location moved to.
<context.old_biome> returns the biome being left.
<context.new_biome> returns the biome being entered.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Warning(s)Cancelling this event will fire a similar event immediately after.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/BiomeEnterExitScriptEvent.java#L20

Nameplayer exhaustion level increases
Event Lines player exhaustion level increases
Triggerswhen a player does an activity that increases their exhaustion level, which increases the rate of hunger.
Generated Examplesafter player exhaustion level increases:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesreason:<reason> to only process the event if the reason matches a specific reason.
Contexts<context.exhaustion> returns the amount of exhaustion added to the player.
<context.reason> returns the reason of exhaustion. See 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/entity/EntityExhaustionEvent.ExhaustionReason.html for a list of valid reasons.
DetermineElementTag(Decimal) to change the amount of exhaustion that will be added to the player.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Warning(s)This event may fire very rapidly.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerIncreasesExhaustionLevelScriptEvent.java#L15

Nameplayer jumps
Event Lines player jumps
Triggerswhen a player jumps.
Generated Examplesafter player jumps:
on player jumps:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns the location the player jumped from.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Warning(s)On Spigot servers, this event and its data are inaccurate and unreliable. This event works more stably on Paper servers.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerJumpScriptEvent.java#L16

Nameplayer logs in for the first time
Event Lines player logs in (for the first time)
player (first) login
Triggerswhen a player logs in to the server. This is during the authentication process, and should NOT be confused with Event:player joins.
Generated Exampleson player logs in:
after player login:
on player login:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.hostname> returns an ElementTag of the player's IP address.
<context.server_hostname> returns an ElementTag of the server address that the player used to connect to the server.
Determine"KICKED" to kick the player from the server.
"KICKED:<ElementTag>" to kick the player and specify a message to show.
GroupPlayer
Warning(s)Generally avoid this event. This is not a way to get a 'first join' event. This is an internal technical event, with specific uses (eg custom whitelisting).
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerLoginScriptEvent.java#L17

Nameplayer prelogin
Event Lines player prelogin
Triggerswhen a player starts to log in to the server.
This is during the EARLY authentication process, and should NOT be confused with Event:player joins.
Generated Exampleson player prelogin:
after player prelogin:
Has PlayerWhen the player has previously joined (and thus the UUID is valid). - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.hostname> returns an ElementTag of the player's hostname.
<context.name> returns an ElementTag of the player's name.
<context.uuid> returns an ElementTag of the player's UUID.
DetermineQueueTag to cause the event to wait until the queue is complete.
"KICKED" to kick the player from the server.
"KICKED <ElementTag>" to kick the player and specify a message to show.
GroupPlayer
Warning(s)This is a very special-case handler, that delays logins until the events are handled on the main thread.
Generally, prefer Event:on player logs in.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerPreLoginScriptEvent.java#L27

Nameplayer prepares anvil craft item
Event Lines player prepares anvil craft item
player prepares anvil craft <item>
Triggerswhen a player prepares an anvil to craft an item.
Generated Examplesafter player prepares anvil craft item:
on player prepares anvil craft yellow_concrete_powder:
on player prepares anvil craft item:
after player prepares anvil craft stripped_oak_log:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.inventory> returns the InventoryTag of the anvil inventory.
<context.item> returns the ItemTag to be crafted.
<context.repair_cost> returns an ElementTag(Number) of the repair cost.
<context.new_name> returns an ElementTag of the new name.
DetermineElementTag(Number) to set the repair cost.
ItemTag to change the item that is crafted.
GroupPlayer
Warning(s)The player doing the crafting is estimated and may be inaccurate.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerPreparesAnvilCraftScriptEvent.java#L19

Nameplayer prepares smithing item
Event Lines player prepares smithing item
player prepares smithing <item>
Triggerswhen a player prepares to upgrade an item on a smithing table.
Generated Examplesafter player prepares smithing item:
after player prepares smithing crying_obsidian:
on player prepares smithing item:
after player prepares smithing birch_chest_boat:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.inventory> returns the InventoryTag of the smithing table inventory.
<context.item> returns the ItemTag after upgrading.
DetermineItemTag to change the item that results from the upgrade.
GroupPlayer
Warning(s)The player doing the smithing is estimated and may be inaccurate.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayersPrepareSmithingTableScriptEvent.java#L18

Nameplayer raises|lowers|toggles item
Event Lines player raises|lowers|toggles <item>
Triggerswhen a player starts or stops holding up an item, such as a shield, spyglass, or crossbow.
Generated Examplesafter player lowers cut_red_sandstone_slab:
after player lowers vex_spawn_egg:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesreason:<reason> to only process the event if the reason matches the input.
Contexts<context.state> returns an ElementTag(Boolean) of whether the player raised or lowered the item.
<context.held_for> returns a DurationTag of how long the player held the item up for (only on Paper).
<context.hand> returns an ElementTag of the hand that the player is raising or lowering (only on Paper).
<context.item> returns an ItemTag of the item that the player is raising or lowering (only on Paper).
<context.reason> returns the reason for a state change. Can be: raise, lower, swap, hold, drop, quit, death.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
Synonyms (Search Aid)player raises shield, player raises spyglass
GroupPlayer
Warning(s)For 'lowers', the item may be tracked incorrectly. Prefer 'player lowers item' (the generic item form) for a 'lowers' event (similar for 'toggles').
Also be aware this event may misfire in some cases.
This event and its data are more accurate on Paper servers.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerRaiseLowerItemScriptEvent.java#L28

Nameplayer receives actionbar
Event Lines player receives actionbar
Triggerswhen a player receives any actionbar from the server.
Generated Exampleson player receives actionbar:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.message> returns an ElementTag of the actionbar.
<context.raw_json> returns an ElementTag of the raw JSON used for the actionbar.
Determine"MESSAGE:<ElementTag>" to change the actionbar.
"RAW_JSON:<ElementTag>" to change the JSON used for the actionbar.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupPlayer
Warning(s)Triggering new actionbar messages in this event will cause it to re-fire.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerReceivesActionbarScriptEvent.java#L5

Nameplayer receives message
Event Lines player receives message
Triggerswhen a player receives any chat message from the server. This does not normally include *player* chat, instead prefer Event:player chats for that.
Generated Examplesafter player receives message:
on player receives message:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.message> returns an ElementTag of the message.
<context.raw_json> returns an ElementTag of the raw JSON used for the message.
<context.system_message> returns true if the message is a system message (not player chat).
Determine"MESSAGE:<ElementTag>" to change the message.
"RAW_JSON:<ElementTag>" to change the JSON used for the message.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupPlayer
Warning(s)Using this will forcibly sync the chat thread.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerReceivesMessageScriptEvent.java#L18

Nameplayer receives packet
Event Lines player receives packet
Triggerswhen a player receives a packet from the server.
Generated Examplesafter player receives packet:
on player receives packet:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesclass:<classname-matcher> to only process the event when the packet class name matches a given classname matcher.
Contexts<context.class> returns an ElementTag of the packet's class name. Note that these are spigot-mapped names, not Mojang-mapped.
<context.reflect_packet> returns a JavaReflectedObjectTag of the packet object.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupPlayer
Warning(s)This event will fire extremely rapidly. Use with caution.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerReceivesPacketScriptEvent.java#L16

Nameplayer right clicks entity
Event Lines player right clicks <entity>
Triggerswhen a player right clicks on an entity.
Generated Exampleson player right clicks hanging:
after player right clicks snowman:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switcheswith:<item> to only process the event when the player is holding a specified item.
type:<entity> to only run if the entity clicked matches the entity input.
Contexts<context.entity> returns the EntityTag the player is clicking on.
<context.item> returns the ItemTag the player is clicking with.
<context.hand> returns "offhand" or "mainhand" to indicate which hand was used to fire the event. Some events fire twice - once for each hand.
<context.click_position> returns a LocationTag of the click position (as a world-less vector, relative to the entity's center). This is only available when clicking armor stands.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Warning(s)this event may in some cases double-fire, requiring usage of the 'ratelimit' command (like 'ratelimit <player> 1t') to prevent doubling actions.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerRightClicksEntityScriptEvent.java#L18

Nameplayer sends packet
Event Lines player sends packet
Triggerswhen a player sends a packet to the server.
Generated Examplesafter player sends packet:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesclass:<classname-matcher> to only process the event when the packet class name matches a given classname matcher.
Contexts<context.class> returns an ElementTag of the packet's class name. Note that these are spigot-mapped names, not Mojang-mapped.
<context.reflect_packet> returns a JavaReflectedObjectTag of the packet object.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupPlayer
Warning(s)This event will fire extremely rapidly. Use with caution.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerSendPacketScriptEvent.java#L16

Nameplayer steps on block
Event Lines player steps on block
player steps on <material>
Triggerswhen a player steps onto a specific block material.
Generated Exampleson player steps on block:
on player steps on smooth_sandstone_slab:
on player steps on material:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns a LocationTag of the block the player is stepping on.
<context.previous_location> returns a LocationTag of where the player was before stepping onto the block.
<context.new_location> returns a LocationTag of where the player is now.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Warning(s)This event may fire very rapidly.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerStepsOnScriptEvent.java#L17

Nameplayer walks
Event Lines player walks
Triggerswhen a player moves in the slightest.
Generated Exampleson player walks:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.old_location> returns the location of where the player was.
<context.new_location> returns the location of where the player is.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Warning(s)This event fires very very rapidly!
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerWalkScriptEvent.java#L15

Nameplayer right|left clicks block
Event Lines player (right|left) clicks <block>
Triggerswhen a player clicks on a block or in the air.
Generated Examplesafter player clicks carrots:
after player clicks nether_brick_wall:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switcheswith:<item> to only process the event if a specified item was held.
using:hand/off_hand/either_hand to only process the event if the specified hand was used to click.
type:<material> to only run if the block clicked matches the material input.
Contexts<context.item> returns the ItemTag the player is clicking with.
<context.location> returns the LocationTag the player is clicking on.
<context.relative> returns a LocationTag of the air block in front of the clicked block.
<context.click_type> returns an ElementTag of the Spigot API click type 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/block/Action.html.
<context.hand> returns an ElementTag of the used hand.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
Warning(s)this event may in some cases double-fire, requiring usage of the 'ratelimit' command (like 'ratelimit <player> 1t') to prevent doubling actions.
this sometimes fires at unexpected times, eg when dropping an item.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerClicksBlockScriptEvent.java#L22

Nameplayer chooses arrow
Event Lines player chooses arrow
Triggerswhen a player chooses an arrow to load a bow/crossbow.
Example
# This example prevents using any arrow but spectral_arrows.
on player chooses arrow arrow:!spectral_arrow:
- determine cancelled
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesarrow:<item> to only process the event when the players chosen arrow matches the input.
bow:<item> to only process the event when the players bow matches the input.
Contexts<context.arrow> returns the ItemTag of the arrow that was chosen.
<context.bow> returns the ItemTag of the bow that is about to get loaded.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
RequiresPaper
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/paper/src/main/java/com/denizenscript/denizen/paper/events/PlayerChoosesArrowScriptEvent.java#L17

Nameplayer prepares grindstone craft item
Event Lines player prepares grindstone craft <item>
Triggerswhen a player prepares to grind an item.
Example
# This example removes the usually not removable curse of binding enchantment.
on player prepares grindstone craft item:
- determine result:<context.result.with[remove_enchantments=binding_curse]>
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.inventory> returns the InventoryTag of the grindstone inventory.
<context.result> returns the ItemTag to be crafted.
Determine"RESULT:<ItemTag>" to change the item that is crafted.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupPlayer
RequiresPaper
Warning(s)The player doing the grinding is estimated and may be inaccurate.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/paper/src/main/java/com/denizenscript/denizen/paper/events/PlayerPreparesGrindstoneCraftScriptEvent.java#L18



Category: Server


Nameserver list ping
Event Lines server list ping
Triggerswhen the server is pinged for a client's server list.
Generated Exampleson server list ping:
after server list ping:
Contexts<context.motd> returns the MOTD that will show.
<context.max_players> returns the number of max players that will show.
<context.num_players> returns the number of online players that will show.
<context.address> returns the IP address requesting the list.
<context.hostname> returns an ElementTag of the server address that is being pinged. Available only on MC 1.19+.
<context.protocol_version> returns the protocol ID of the server's version (only on Paper).
<context.version_name> returns the name of the server's version (only on Paper).
<context.client_protocol_version> returns the client's protocol version ID (only on Paper).
Determine"MAX_PLAYERS:<ElementTag(Number)>" to change the max player amount that will show.
"ICON:<ElementTag>" of a file path to an icon image, to change the icon that will display.
"PROTOCOL_VERSION:<ElementTag(Number)>" to change the protocol ID number of the server's version (only on Paper).
"VERSION_NAME:<ElementTag>" to change the server's version name (only on Paper).
"EXCLUDE_PLAYERS:<ListTag(PlayerTag)>" to exclude a set of players from showing in the player count or preview of online players (only on Paper).
"ALTERNATE_PLAYER_TEXT:<ListTag>" to set custom text for the player list section of the server status (only on Paper). (Requires "Allow restricted actions" in Denizen/config.yml). Usage of this to present lines that look like player names (but aren't) is forbidden.
"MOTD:<ElementTag>" to change the MOTD that will show.
GroupServer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/server/ListPingScriptEvent.java#L26

Nameserver start
Event Lines server start
Triggerswhen the server starts.
Generated Exampleson server start:
after server start:
GroupServer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/server/ServerStartScriptEvent.java#L7

Nametab complete
Event Lines tab complete
Triggerswhen a player or the console is sent a list of available tab completions.
Generated Exampleson tab complete:
Has Playerwhen the tab completion is done by a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchescommand:<command_name> to only process the event if the command matches the input name.
Contexts<context.buffer> returns the full raw command buffer.
<context.command> returns the command name.
<context.current_arg> returns the current argument for completion.
<context.completions> returns a list of available tab completions.
<context.server> returns true if the tab completion was triggered from the console.
DetermineListTag to set the list of available tab completions.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupServer
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/server/TabCompleteScriptEvent.java#L18

Namecommand
Event Lines command
<command_name> command
Triggerswhen a player, console, or command block/minecart runs a Bukkit command. This happens before
any code of established commands, allowing scripts to 'override' existing commands.
Note that for the sake of the event line, escaping is used, so 'bukkit:plugins' becomes 'bukkit&coplugins'
Generated Exampleson command:
on command_name command:
Has Playerwhen source_type is player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.command> returns the command name as an ElementTag.
<context.raw_args> returns any args used, unmodified as plaintext.
<context.args> returns a ListTag of the arguments.
<context.source_type> returns the source of the command. Can be: PLAYER, SERVER, COMMAND_BLOCK, or COMMAND_MINECART.
<context.command_block_location> returns the command block's location (if the command was run from one).
<context.command_minecart> returns the EntityTag of the command minecart (if the command was run from one).
Determine"FULFILLED" to tell Bukkit the command was handled.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupServer
Warning(s)This event is to override existing commands, and should not be used to create new commands - use a command script instead.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/server/CommandScriptEvent.java#L27

Nameinternal bukkit event
Event Lines internal bukkit event
Triggerswhen the specified internal Bukkit event fires. Useful for testing/debugging, or for interoperation with external plugins that have their own Bukkit events. Get the raw event via 'context.reflect_event'.
Generated Exampleson internal bukkit event:
Switchesevent:<path> (required) to specify the Bukkit event path to use (like "event:org.bukkit.event.block.BlockBreakEvent")
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupServer
Warning(s)This exists primarily for testing/debugging, and is almost never a good idea to include in a real script.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/server/InternalEventScriptEvent.java#L23

Nameserver prestart
Event Lines server prestart
Triggersbefore the server finishes starting... fired after some saves are loaded, but before other data is loaded. Use with extreme caution.
Example
on server prestart:
- createworld my_extra_world
GroupServer
Warning(s)This event uses special pre-loading tricks to fire before everything else. Use extreme caution.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/server/ServerPrestartScriptEvent.java#L9

Nameshutdown
Event Lines shutdown
Triggerswhen the server is shutting down.
Example
# This *might* show a message in logs during shutdown. No guarantee.
on shutdown:
- announce to_console "Last message in the logs from Denizen probably!"
GroupServer
Warning(s)not all plugins will be loaded and delayed scripts will be dropped.
Also note that this event is not guaranteed to always run (eg if the server crashes).
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/events/core/ShutdownScriptEvent.java#L7



Category: Vehicle


Namevehicle collides with block
Event Lines vehicle collides with block
vehicle collides with <material>
<vehicle> collides with block
<vehicle> collides with <material>
Triggerswhen a vehicle collides with a block.
Generated Examplesafter vehicle collides with block:
on vehicle collides with material:
on horse collides with lime_candle:
after vehicle collides with black_stained_glass:
after vehicle collides with material:
Contexts<context.vehicle> returns the EntityTag of the vehicle.
<context.location> returns the LocationTag of the block.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupVehicle
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/vehicle/VehicleCollidesBlockScriptEvent.java#L14

Namevehicle collides with entity
Event Lines vehicle collides with entity
vehicle collides with <entity>
<vehicle> collides with entity
<vehicle> collides with <entity>
Triggerswhen a vehicle collides with an entity.
Example
on vehicle collides with entity:
Example
on minecart collides with sheep:
Example
# This example disambiguates this event from the "projectile collides with entity" event for specific entity types.
on vehicle collides with entity type:creeper:
- announce "A <context.vehicle.entity_type> collided with a creeper!"
Has Playerwhen a vehicle collides with a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCwhen a vehicle collides with an NPC.
Switchestype:<entity> to only process the event if the colliding entity matches the EntityTag matcher input.
Contexts<context.vehicle> returns the EntityTag of the vehicle.
<context.entity> returns the EntityTag of the entity the vehicle has collided with.
<context.pickup> returns whether the vehicle can pick up the entity.
Determine"PICKUP:<ElementTag(Boolean)>" to set whether the vehicle is allowed to pick up the entity or not.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupVehicle
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/vehicle/VehicleCollidesEntityScriptEvent.java#L16

Namevehicle created
Event Lines vehicle created
<vehicle> created
Triggerswhen a vehicle is created.
Generated Examplesafter vehicle created:
on vehicle created:
Contexts<context.vehicle> returns the EntityTag of the vehicle.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupVehicle
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/vehicle/VehicleCreatedScriptEvent.java#L13

Namevehicle damaged
Event Lines <vehicle> damaged
<entity> damages <vehicle>
Triggerswhen a vehicle is damaged.
Example
on vehicle damaged:
- announce "A <context.vehicle.entity_type> took a hit!"
Example
# This example disambiguates this event from the "entity damaged" event for specific vehicle entity types.
on vehicle damaged type:minecart:
- announce "<context.vehicle.entity_type> took vehicular damage!"
Example
on player damages minecart:
- announce "<player.name> caused damage to a minecart!"
Has NPCwhen the entity that damaged the vehicle is an NPC.
Switchestype:<vehicle> to only run if the vehicle damaged matches the EntityTag matcher input.
Contexts<context.vehicle> returns the EntityTag of the vehicle.
<context.entity> returns the EntityTag of the attacking entity.
<context.damage> returns the amount of damage to be received.
DetermineElementTag(Decimal) to set the value of the damage received by the vehicle.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupVehicle
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/vehicle/VehicleDamagedScriptEvent.java#L15

Namevehicle destroyed
Event Lines vehicle destroyed
<vehicle> destroyed
entity destroys vehicle
<entity> destroys vehicle
entity destroys <vehicle>
<entity> destroys <vehicle>
Triggerswhen a vehicle is destroyed.
Generated Examplesafter vehicle destroyed:
after horse destroyed:
after entity destroys vehicle:
after entity destroys minecart:
after phantom destroys minecart:
on entity destroys vehicle:
after npc destroys vehicle:
on giant destroys vehicle:
Has NPCwhen the entity that destroyed the vehicle is an NPC.
Contexts<context.vehicle> returns the EntityTag of the vehicle.
<context.entity> returns the EntityTag of the attacking entity.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupVehicle
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/vehicle/VehicleDestroyedScriptEvent.java#L14

Namevehicle moves
Event Lines vehicle moves
<vehicle> moves
Triggerswhen a vehicle moves in the slightest.
Generated Exampleson vehicle moves:
after vehicle moves:
Contexts<context.vehicle> returns the EntityTag of the vehicle.
<context.from> returns the location of where the vehicle was.
<context.to> returns the location of where the vehicle is.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupVehicle
Warning(s)This event fires very very rapidly!
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/vehicle/VehicleMoveScriptEvent.java#L13



Category: World


Namegeneric game event
Event Lines generic game event
Triggerswhen the minecraft world experiences a generic minecraft game event. This is normally used for sculk sensors.
Generated Exampleson generic game event:
after generic game event:
Switchestype:<game_event_name> to only process the event when a specific game event is fired.
Contexts<context.location> returns the location of the event.
<context.entity> returns the entity that triggered the event, if any.
<context.game_event> returns the name of the Minecraft game event, for example "minecraft:block_change". See 🔗https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/GameEvent.html.
<context.radius> returns the radius, in blocks, that the event is broadcast to.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/GenericGameEventScriptEvent.java#L16

Namelightning strikes
Event Lines lightning strikes
Triggerswhen lightning strikes in a world.
Generated Exampleson lightning strikes:
Contexts<context.lightning> returns the EntityTag of the lightning.
<context.location> returns the LocationTag where the lightning struck.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/LightningStrikesScriptEvent.java#L13

Namelingering potion splash|splashes
Event Lines lingering potion splash|splashes
lingering <item> splash|splashes
Triggerswhen a lingering splash potion breaks open
Generated Examplesafter lingering potion splash:
on lingering item splash:
after lingering potion splashes:
after lingering crimson_trapdoor splash:
Contexts<context.potion> returns an ItemTag of the potion that broke open.
<context.location> returns the LocationTag the splash potion broke open at.
<context.entity> returns an EntityTag of the splash potion.
<context.cloud> returns the EntityTag of the area of effect cloud.
<context.radius> returns the radius of the effect cloud.
<context.duration> returns the lingering duration of the effect cloud.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/LingeringPotionSplashScriptEvent.java#L16

Nameloot generates
Event Lines loot generates
Triggerswhen loot is generated somewhere in the world (like a vanilla chest being opened for the first time).
Generated Examplesafter loot generates:
Has Playerwhen the linked entity is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesfor:<type> to only process the event if a certain inventory type is receiving loot (like 'for:chest').
Contexts<context.entity> returns an entity that caused loot generation, if any.
<context.inventory> returns the InventoryTag that loot is generating into.
<context.items> returns a ListTag of the items being generated.
<context.loot_table_id> returns an element indicating the minecraft key for the loot-table that was generated.
Determine"LOOT:<ListTag(ItemTag)>" to change the list of items that will generate as loot.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/LootGenerateScriptEvent.java#L22

Nameportal created because reason
Event Lines portal created (because <reason>)
Triggerswhen a portal is created.
Generated Examplesafter portal created because reason:
after portal created:
Contexts<context.entity> returns the EntityTag that created the portal.
<context.world> returns the WorldTag the portal was created in.
<context.reason> returns an ElementTag of the reason the portal was created. (FIRE, NETHER_PAIR, END_PLATFORM)
<context.blocks> returns a ListTag of all the blocks that will become portal blocks.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/PortalCreateScriptEvent.java#L17

Namepotion splash|splashes
Event Lines potion splash|splashes
<item> splash|splashes
Triggerswhen a splash potion breaks open.
Example
# This example sets the intensity of the first affected entity to 0.6.
on potion splashes:
- if <context.entities.any>:
     - determine INTENSITY:[entity=<context.entities.first>;intensity=0.6]
Contexts<context.potion> returns an ItemTag of the potion that broke open.
<context.entities> returns a ListTag of affected entities.
<context.location> returns the LocationTag the splash potion broke open at.
<context.entity> returns an EntityTag of the splash potion.
<context.intensity> returns an ListTag(MapTag) of the intensity for all affected entities.
DetermineINTENSITY:<ListTag(MapTag)>" to set the intensity of specified entities.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/PotionSplashScriptEvent.java#L25

Nameraid finishes
Event Lines raid finishes
Triggerswhen a village raid finishes normally.
Generated Exampleson raid finishes:
after raid finishes:
Contexts<context.raid> returns the raid data. See Language:Raid Event Data.
<context.winners> returns the ListTag of players who completed the raid. This is separate from the raid's heroes in that the winners are guaranteed to be online.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/RaidFinishesScriptEvent.java#L13

Nameraid spawns wave
Event Lines raid spawns wave
Triggerswhen a village raid spawns a new wave of raiders.
Generated Examplesafter raid spawns wave:
Contexts<context.raid> returns the raid data. See Language:Raid Event Data.
<context.leader> returns the EntityTag of the patrol leader of the wave.
<context.new_raiders> returns the ListTag of all new raiders.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/RaidSpawnsWaveScriptEvent.java#L13

Nameraid stops
Event Lines raid stops
Triggerswhen a village raid stops for any reason.
Generated Examplesafter raid stops:
on raid stops:
Switchesreason:<reason> to only process the event if the raid stopped for a certain reason.
Contexts<context.raid> returns the raid data. See Language:Raid Event Data.
<context.reason> returns the reason for stopping. See 🔗https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event/raid/RaidStopEvent.Reason.html.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/RaidStopsScriptEvent.java#L11

Namespawn changes
Event Lines spawn changes
Triggerswhen the world's spawn point changes.
Generated Examplesafter spawn changes:
Switchesfor:<world> to only process the event when a specified world's spawn changes.
Contexts<context.world> returns the WorldTag that the spawn point changed in.
<context.old_location> returns the LocationTag of the old spawn point.
<context.new_location> returns the LocationTag of the new spawn point.
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/SpawnChangeScriptEvent.java#L13

Namestructure/plant grows naturally
Event Lines <structure/plant> grows (naturally)
<structure/plant> grows from bonemeal
Triggerswhen a structure (a tree or a mushroom) grows in a world.
Generated Exampleson structure/plant grows:
after structure/plant grows from bonemeal:
after structure/plant grows naturally:
Has Playerwhen a player caused the structure growth to occur (eg with bonemeal). - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.world> returns the WorldTag the structure grew in.
<context.location> returns the LocationTag the structure grew at.
<context.structure> returns an ElementTag of the structure's type. Refer to 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/TreeType.html.
<context.blocks> returns a ListTag of all block locations to be modified.
<context.new_materials> returns a ListTag of the new block materials, to go with <context.blocks>.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/StructureGrowsScriptEvent.java#L20

Namethunder changes|begins|clears
Event Lines thunder changes|begins|clears
Triggerswhen thunder starts or stops in a world.
Generated Exampleson thunder clears:
after thunder clears:
Switchesin:<world> to only run the event if it applies to a specific world.
Contexts<context.world> returns the WorldTag the thunder changed in.
<context.thunder> returns true if thunder is starting, or false if thunder is stopping.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/ThunderChangesScriptEvent.java#L13

Nametime changes in world
Event Lines time changes (in <world>)
time <0-23> (in <world>)
Triggerswhen the current time changes in a world (once per mine-hour).
Generated Exampleson time changes in world:
after time 0-23:
on time changes:
Contexts<context.time> returns the current time (the hour, as a number from 0 to 23).
<context.world> returns the world.
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/TimeChangeScriptEvent.java#L11

Nameweather changes|rains|clears in world
Event Lines weather changes|rains|clears (in <world>)
Triggerswhen weather changes in a world.
Generated Examplesafter weather rains in world:
after weather clears:
Contexts<context.world> returns the WorldTag the weather changed in.
<context.weather> returns an ElementTag with the name of the new weather (rains or clears).
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/WeatherChangesScriptEvent.java#L13

Nameworld initializes
Event Lines <world> initializes
Triggerswhen a world is initialized.
Generated Examplesafter world initializes:
on world_nether initializes:
Contexts<context.world> returns the WorldTag that was initialized.
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/WorldInitsScriptEvent.java#L12

Nameworld loads
Event Lines <world> loads
Triggerswhen a world is loaded.
Generated Exampleson world loads:
on world_the_end loads:
Contexts<context.world> returns the WorldTag that was loaded.
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/WorldLoadsScriptEvent.java#L12

Nameworld saves
Event Lines <world> saves
Triggerswhen a world is saved.
Generated Examplesafter world saves:
on world_nether saves:
Contexts<context.world> returns the WorldTag that was saved.
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/WorldSavesScriptEvent.java#L12

Nameworld unloads
Event Lines <world> unloads
Triggerswhen a world is unloaded.
Generated Exampleson world unloads:
after world unloads:
Contexts<context.world> returns the WorldTag that was unloaded.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupWorld
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/WorldUnloadsScriptEvent.java#L12

Namechunk loads entities
Event Lines chunk loads entities
Triggerswhen a chunk loads in its entities.
Generated Examplesafter chunk loads entities:
Switchesentity_type:<type-matcher> to only fire in the chunk contains an entity that matches the given entity matcher.
include_empty:<true/false> defaults to false, set to 'true' to include chunks loading an empty set of entities.
Contexts<context.chunk> returns the loading chunk.
<context.entities> returns a ListTag of all entities to be loaded.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Warning(s)This event will fire very rapidly.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/ChunkLoadEntitiesScriptEvent.java#L15

Namechunk loads for the first time
Event Lines chunk loads (for the first time)
Triggerswhen a new chunk is loaded
Generated Examplesafter chunk loads for the first time:
on chunk loads:
Contexts<context.chunk> returns the loading chunk.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Warning(s)This event will fire *extremely* rapidly and often when using 'for the first time'.
When not using that, it will fire so rapidly that lag is almost guaranteed. Use with maximum caution.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/ChunkLoadScriptEvent.java#L12

Namechunk unloads
Event Lines chunk unloads
Triggerswhen a chunk is unloaded
Generated Exampleson chunk unloads:
Contexts<context.chunk> returns the unloading chunk.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Warning(s)This event will fire *extremely* rapidly and often!
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/ChunkUnloadScriptEvent.java#L12

Namechunk unloads entities
Event Lines chunk unloads entities
Triggerswhen a chunk unloads in its entities. Note that this is basically a notification - it's already too late to change entity data.
Generated Exampleson chunk unloads entities:
after chunk unloads entities:
Switchesentity_type:<type-matcher> to only fire in the chunk contains an entity that matches the given entity matcher.
include_empty:<true/false> defaults to false, set to 'true' to include chunks loading an empty set of entities.
Contexts<context.chunk> returns the unloading chunk.
<context.entities> returns a ListTag of all entities being unloaded.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupWorld
Warning(s)This event will fire very rapidly.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/world/ChunkUnloadEntitiesScriptEvent.java#L15



Category: Clientizen


Nameclientizen event
Event Lines clientizen event
TriggersWhen the server receives an event from a clientizen client, this requires config option 'Clientizen.process events' in the Depenizen config.
Example
# Use to listen to Clientizen events with the id 'my_id' and send the player that sent them a message.
on clientizen event id:my_id:
- narrate "Hello! you sent an event with the id '<context.id>'"
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesid:<id> to only process the event if the identifier received from the client matches the specified matcher.
Contexts<context.id> returns an ElementTag of the event identifier received from the client.
<context.data> returns the context MapTag received from the client as a map of keys to ElementTags.
<context.(key)> returns the ElementTag value of the input key in the context map, if available.
GroupClientizen
Warning(s)The client can send any data it wants, so should very carefully verify any input before using it.
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/clientizen/ClientizenEventScriptEvent.java#L15



Category: Depenizen


Nameareashop shop bought
Event Lines areashop <shop> bought
Triggerswhen an AreaShop is bought.
Generated Examplesafter areashop shop bought:
Has PlayerAlways (the buyer). - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.shop> returns the AreaShop that's being bought.
GroupDepenizen
RequiresDepenizen, AreaShop
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/areashop/AreaShopBoughtScriptEvent.java#L15

Nameareashop shop expires
Event Lines areashop <shop> expires
Triggerswhen an AreaShop's rent expires.
Generated Examplesafter areashop shop expires:
on areashop shop expires:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.shop> Returns the AreaShop that's expiring.
GroupDepenizen
RequiresDepenizen, AreaShop
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/areashop/AreaShopExpiresScriptEvent.java#L15

Nameareashop shop rented
Event Lines areashop <shop> rented
Triggerswhen an AreaShop is rented.
Generated Examplesafter areashop shop rented:
Has PlayerAlways (the renter). - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.shop> returns the AreaShop that's being rented.
<context.extended> returns true if the region has been extended, false if this is the first time buying the region.
GroupDepenizen
RequiresDepenizen, AreaShop
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/areashop/AreaShopRentedScriptEvent.java#L16

Nameareashop shop resold
Event Lines areashop <shop> resold
Triggerswhen an AreaShop is resold.
Generated Examplesafter areashop shop resold:
on areashop shop resold:
Has PlayerAlways (the buyer). - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.shop> returns the AreaShop that's being resold.
<context.seller> returns the player that has resold the shop.
GroupDepenizen
RequiresDepenizen, AreaShop
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/areashop/AreaShopResoldScriptEvent.java#L15

Nameareashop shop sold
Event Lines areashop <shop> sold
Triggerswhen an AreaShop is resold.
Generated Examplesafter areashop shop sold:
Has PlayerAlways (the old buyer). - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.shop> returns the AreaShop that's being sold.
GroupDepenizen
RequiresDepenizen, AreaShop
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/areashop/AreaShopSoldScriptEvent.java#L15

Namearikeys key pressed
Event Lines arikeys key pressed
TriggersWhen a key is pressed by a client running AriKeys, if that key is in the AriKeys config.
Generated Exampleson arikeys key pressed:
after arikeys key pressed:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesid:<id> to only process the event if the key ID matches the given text matcher.
Contexts<context.id> Returns the ID of the key that was pressed according to the AriKeys config, as a namespaced key.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, AriKeys
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/arikeys/AriKeysKeyPressScriptEvent.java#L14

Namearikeys key released
Event Lines arikeys key released
TriggersWhen a key stops being pressed by a client running AriKeys, if that key is in the AriKeys config.
Generated Examplesafter arikeys key released:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesid:<id> to only process the event if the key ID matches the given text matcher.
Contexts<context.id> Returns the ID of the key that was released according to the AriKeys config, as a namespaced key.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, AriKeys
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/arikeys/AriKeysKeyReleaseScriptEvent.java#L14

Namebigdoors door toggles|opens|closes
Event Lines bigdoors door toggles|opens|closes
Triggerswhen a Big Doors door opens or closes.
Generated Exampleson bigdoors door toggles:
after bigdoors door closes:
Switchesdoor:<id> to only process the event if the door matches the input.
Contexts<context.door> returns the Big Doors door being toggled.
<context.state> returns the Big Doors open state ('open' or 'close').
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Big Doors
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/bigdoors/BigDoorsDoorTogglesScriptEvent.java#L15

Namebungee player joins network
Event Lines bungee player joins network
Triggerswhen a player joins the Bungee network (but has not yet entered a server).
Generated Examplesafter bungee player joins network:
Has Playerwhen the player has been on this specific server before. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.name> returns the connecting player's name.
<context.uuid> returns the connecting player's UUID.
<context.ip> returns the connecting player's IP address.
<context.hostname> returns the virtual hostname that the player is connecting to.
GroupDepenizen
RequiresDepenizen, DepenizenBungee, BungeeCord
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/bungee/BungeePlayerJoinsScriptEvent.java#L16

Namebungee player leaves network
Event Lines bungee player leaves network
Triggerswhen a player leaves the Bungee network.
Generated Exampleson bungee player leaves network:
Has Playerwhen the player has been on this specific server before. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.name> returns the leaving player's name.
<context.uuid> returns the leaving player's UUID.
<context.ip> returns the leaving player's IP address.
GroupDepenizen
RequiresDepenizen, DepenizenBungee, BungeeCord
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/bungee/BungeePlayerQuitsScriptEvent.java#L16

Namebungee player switches to server
Event Lines bungee player switches to server
Triggerswhen a player switches to a new server on the Bungee network.
Generated Examplesafter bungee player switches to server:
Has Playerwhen the player has been on this specific server before. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.name> returns the switching player's name.
<context.uuid> returns the switching player's UUID.
<context.server> returns the name of the server being switched to.
GroupDepenizen
RequiresDepenizen, DepenizenBungee, BungeeCord
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/bungee/BungeePlayerServerSwitchScriptEvent.java#L16

Namebungee server connects
Event Lines bungee server connects
Triggerswhen another server on the Bungee network becomes connected.
Generated Examplesafter bungee server connects:
on bungee server connects:
Contexts<context.server> returns the name of the newly connected server.
GroupDepenizen
RequiresDepenizen, DepenizenBungee, BungeeCord
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/bungee/BungeeServerConnectScriptEvent.java#L11

Namebungee server disconnects
Event Lines bungee server disconnects
Triggerswhen another server on the Bungee network becomes disconnected.
Generated Examplesafter bungee server disconnects:
on bungee server disconnects:
Contexts<context.server> returns the name of the previously connected server.
GroupDepenizen
RequiresDepenizen, DepenizenBungee, BungeeCord
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/bungee/BungeeServerDisconnectScriptEvent.java#L11

Namecrackshot landmine triggered
Event Lines crackshot landmine triggered
Triggerswhen a CrackShot landmine is triggered by an entity walking through it.
Generated Examplesafter crackshot landmine triggered:
on crackshot landmine triggered:
Has PlayerAlways - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.weapon> returns the weapon name of the landmine.
<context.victim> returns the entity that triggered the landmine.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, CrackShot
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/crackshot/CrackShotLandmineTriggerEvent.java#L15

Namecrackshot player finishes reloading weapon
Event Lines crackshot player finishes reloading weapon
Triggerswhen a player finishes reloading their CrackShot weapon.
Generated Exampleson crackshot player finishes reloading weapon:
after crackshot player finishes reloading weapon:
Has PlayerAlways - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.weapon> returns the name of the weapon.
GroupDepenizen
RequiresDepenizen, CrackShot
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/crackshot/CrackShotPlayerFinishesReloadingWeaponEvent.java#L14

Namecrackshot player fires automatic weapon
Event Lines crackshot player fires automatic weapon
Triggerswhile a player is firing a fully automatic CrackShot weapon.
Generated Examplesafter crackshot player fires automatic weapon:
Has PlayerAlways - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.weapon> returns the name of the weapon.
<context.fire_rate> returns the weapon fire rate.
Determine"FIRE_RATE:<ElementTag(Number)>" to set the fire rate.
GroupDepenizen
RequiresDepenizen, CrackShot
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/crackshot/CrackShotPlayerFiresAutomaticWeaponEvent.java#L16

Namecrackshot player fires projectile
Event Lines crackshot player fires projectile
Triggersjust before a projectile is launched from a CrackShot weapon.
Generated Examplesafter crackshot player fires projectile:
on crackshot player fires projectile:
Has PlayerAlways - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.weapon> returns the name of the weapon about to fire.
<context.bullet_spread> returns the spread of the projectiles being fired.
<context.left_click> returns whether the fire was a left click.
<context.shot_sounds> returns a list of the shot sounds.
Determine"BULLET_SPREAD:<ElementTag(Number)>" to set the bullet spread.
"SHOT_SOUNDS:<ElementTag>" to set the shot sounds. Use "NONE" to have no sound. 🔗https://github.com/Shampaggon/CrackShot/wiki/The-Complete-Guide-to-CrackShot#sounds
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, CrackShot
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/crackshot/CrackShotPlayerFiresProjectileEvent.java#L19

Namecrackshot player places landmine
Event Lines crackshot player places landmine
Triggerswhen a player places a landmine.
Generated Exampleson crackshot player places landmine:
Has PlayerAlways - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.landmine> returns the EntityTag for the landmine.
GroupDepenizen
RequiresDepenizen, CrackShot
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/crackshot/CrackShotPlayerPlacesLandmineEvent.java#L14

Namecrackshot player starts firing weapon
Event Lines crackshot player starts firing weapon
Triggerswhen a player tries to start firing a CrackShot weapon.
Generated Exampleson crackshot player starts firing weapon:
Has PlayerAlways - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.weapon> returns the name of the weapon.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, CrackShot
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/crackshot/CrackShotPlayerStartsFiringWeaponEvent.java#L14

Namecrackshot player starts reloading weapon
Event Lines crackshot player starts reloading weapon
Triggerswhen a player starts reloading their CrackShot weapon.
Generated Exampleson crackshot player starts reloading weapon:
Has PlayerAlways - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.weapon> returns the name of the weapon.
<context.reload_speed> returns the rate at which the weapon is reloaded.
<context.reload_time> returns the time taken to reload in ticks.
<context.reload_sounds> returns a ListTag of the reload sounds.
Determine"RELOAD_SPEED: <ElementTag(Number)>" to set the reload speed.
The reload speed can be scaled with a decimal ranging from zero to infinity.
For example, 0 is instantaneous, 1 is normal and 2 will double the reload time.
"RELOAD_TIME:<DurationTag>" to set the time taken to reload in ticks.
"RELOAD_SOUNDS:<ElementTag>" to set the reload sounds. Use "NONE" to have no sound. 🔗https://github.com/Shampaggon/CrackShot/wiki/The-Complete-Guide-to-CrackShot#sounds
GroupDepenizen
RequiresDepenizen, CrackShot
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/crackshot/CrackShotPlayerStartsReloadingWeaponEvent.java#L20

Namecrackshot player toggles weapon attachment
Event Lines crackshot player toggles weapon attachment
Triggerswhen a player toggles an attachment on a CrackShot weapon.
Generated Examplesafter crackshot player toggles weapon attachment:
Has PlayerAlways - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.weapon> returns the name of the weapon.
<context.delay> returns the delay between toggles.
Determine"TOGGLE_DELAY:<ElementTag(Number)>" to set the time between toggles.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, CrackShot
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/crackshot/CrackShotPlayerTogglesWeaponAttachmentEvent.java#L17

Namecrackshot player zooms weapon scope
Event Lines crackshot player zooms weapon scope
Triggerswhen a player zooms their CrackShot weapon scope.
Generated Examplesafter crackshot player zooms weapon scope:
Has PlayerAlways - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.weapon> returns the name of the weapon.
<context.zoomed> returns whether the player zoomed in.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, CrackShot
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/crackshot/CrackShotPlayerZoomsWeaponScopeEvent.java#L14

Namecrackshot weapon causes explosion
Event Lines crackshot weapon causes explosion
Triggerswhen a CrackShot weapon explodes, splits or airstrikes.
Generated Exampleson crackshot weapon causes explosion:
Has PlayerAlways - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> returns the LocationTag for where the explosion occurred.
<context.weapon> returns the weapon name that caused the explosion.
<context.split> returns whether the explosion was a cluster bomb splitting.
<context.airstrike> returns whether the explosion was an airstrike call.
GroupDepenizen
RequiresDepenizen, CrackShot
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/crackshot/CrackShotWeaponCausesExplosionEvent.java#L15

Namecrackshot weapon damages entity
Event Lines crackshot weapon damages entity
Triggerswhen an entity is damaged by a CrackShot weapon.
Generated Examplesafter crackshot weapon damages entity:
on crackshot weapon damages entity:
Has PlayerAlways - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.damager> returns the entity that did the damage. This can be a projectile, or TNT.
<context.weapon> returns the name of the weapon that did the damage.
<context.victim> returns the entity that was damaged.
<context.damage> returns the amount of damage dealt.
<context.backstab> returns if the attack was a back-stab.
<context.critical> returns if the attack was a critical hit.
<context.headshot> returns if the attack was a head-shot.
DetermineElementTag(Decimal) to set damage dealt.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, CrackShot
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/crackshot/CrackShotWeaponDamageEntityEvent.java#L16

Nameessentials player balance changes
Event Lines essentials player balance changes
Triggerswhen a player's balance changes, when using Essentials economy.
Generated Exampleson essentials player balance changes:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.old_balance> Returns the balance before changes are made.
<context.new_balance> Returns the balance after changes are made.
<context.cause> returns the reason for the balance change, refer to 🔗https://github.com/EssentialsX/Essentials/blob/2.x/Essentials/src/main/java/net/ess3/api/events/UserBalanceUpdateEvent.java#L73-L78.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, Essentials
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/essentials/PlayerBalanceChangeScriptEvent.java#L14

Namegp claim changed
Event Lines gp claim changed
Triggerswhen a Grief Prevention claim is modified.
Generated Exampleson gp claim changed:
Has Playerwhen source_type is player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.old_claim> returns the GriefPreventionClaimTag of the old claim.
<context.new_claim> returns the GriefPreventionClaimTag of the new claim.
<context.source_type> returns the source of the change. Can be: PLAYER, SERVER, or AUTO_DEEPEN.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, GriefPrevention
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/griefprevention/GPClaimChangedScriptEvent.java#L19

Namegp claim created
Event Lines gp claim created
Triggerswhen a Grief Prevention claim is created.
Generated Examplesafter gp claim created:
Has Playerwhen source_type is player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.claim> returns the GriefPreventionClaimTag that is being created.
<context.source_type> returns the source of the creation. Can be PLAYER or SERVER.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, GriefPrevention
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/griefprevention/GPClaimCreatedScriptEvent.java#L17

Namegp claim deleted
Event Lines gp claim deleted
Triggerswhen a Grief Prevention claim is deleted.
Generated Examplesafter gp claim deleted:
Contexts<context.claim> returns the GriefPreventionClaimTag being deleted.
GroupDepenizen
RequiresDepenizen, GriefPrevention
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/griefprevention/GPClaimDeletedScriptEvent.java#L12

Namejobs player earns exp for job
Event Lines jobs player earns exp for <job>
Triggerswhen a player performs an action that would cause them to earn Jobs exp for a certain job.
Generated Examplesafter jobs player earns exp for job:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesaction:<action> to only process the event if it came from a specified action.
Contexts<context.job> Returns a JobsJobTag of the job that the player is gaining exp for.
<context.experience> Returns an ElementTag(Decimal) of the amount of exp the player will earn.
<context.action> Returns an ElementTag of the name of the action being paid for, which can be any of the strings from: 🔗https://github.com/Zrips/Jobs/blob/master/src/main/java/com/gamingmesh/jobs/container/ActionType.java.
Determine"EXP:<ElementTag(Decimal)>" to change the amount of Jobs exp this action should provide.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Jobs
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/jobs/JobsJobsExpGainScriptEvent.java#L17

Namejobs player earns money for job
Event Lines jobs player earns money for <job>
Triggerswhen a player performs an action that would cause them to be paid for a certain job.
Generated Exampleson jobs player earns money for job:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchesaction:<action> to only process the event if it came from a specified action.
Contexts<context.job> Returns an JobsJobTag of the job that the player is being paid for.
<context.money> Returns an ElementTag(Decimal) of the amount of money the player will be paid.
<context.points> Returns an ElementTag(Decimal) of the amount of points the player will be paid.
<context.action> Returns an ElementTag the name of the action being paid for, which can be any of the strings from: 🔗https://github.com/Zrips/Jobs/blob/master/src/main/java/com/gamingmesh/jobs/container/ActionType.java.
Determine"MONEY:<ElementTag(Decimal)>" to change the amount of money this action should provide.
"POINTS:<ElementTag(Decimal)>" to change the amount of Jobs points this action should provide.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Jobs
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/jobs/JobsJobsPaymentScriptEvent.java#L17

Namejobs player joins job
Event Lines jobs player joins <job>
Triggerswhen a player joins the specified job.
Generated Examplesafter jobs player joins job:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.job> Returns the job that the player is joining.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Jobs
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/jobs/JobsJobsJoinScriptEvent.java#L15

Namejobs player leaves job
Event Lines jobs player leaves <job>
Triggerswhen a player joins the specified job.
Generated Exampleson jobs player leaves job:
after jobs player leaves job:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.job> Returns the job that the player is joining.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Jobs
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/jobs/JobsJobsLeaveScriptEvent.java#L15

Namejobs player levels up job
Event Lines jobs player levels up <job>
Triggerswhen a player levels up in the specified job.
Generated Examplesafter jobs player levels up job:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.job> Returns the job that the player is levelling up in.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Jobs
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/jobs/JobsJobsLevelUpScriptEvent.java#L15

Namelibsdisguises disguise|disguises disguise
Event Lines libsdisguises disguise|disguises <disguise>
Triggerswhen a entity disguises.
Generated Examplesafter libsdisguises disguises disguise:
after libsdisguises disguise disguise:
Contexts<context.entity> returns the entity who disguised.
<context.disguise> returns the disguise in use.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, LibsDisguises
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/libsdisguises/EntityDisguisesScriptEvent.java#L15

Namelibsdisguises undisguise|undisguises disguise
Event Lines libsdisguises undisguise|undisguises <disguise>
Triggerswhen a entity undisguises.
Generated Exampleson libsdisguises undisguises disguise:
after libsdisguises undisguises disguise:
Contexts<context.entity> returns the entity who undisguised.
<context.disguise> returns the disguise in use.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, LibsDisguises
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/libsdisguises/EntityUndisguisesScriptEvent.java#L15

Namemagicspells entity casts spell
Event Lines magicspells <entity> casts <spell>
Triggerswhen an entity starts to casts a spell.
Generated Examplesafter magicspells entity casts spell:
Has PlayerWhen the caster is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.spell_name> returns the name of the spell.
<context.caster> returns the entity that casted the spell.
<context.power> returns an ElementTag(Decimal) of the power of the spell.
<context.cast_time> returns an ElementTag(Number) of the cast time of the spell.
<context.cooldown> returns an ElementTag(Decimal) of the cooldown of the spell.
<context.spell_reagent_TYPE> returns an ElementTag(Number) of the reagent cost for the given type. Valid types are: mana, health, hunger, experience, levels, durability, money
<context.spell_reagent_variables> returns a ListTag in the form variable/cost|...
<context.spell_reagent_items> returns a ListTag of ItemTags of reagent cost.
Determine"POWER:<ElementTag(Number)>" to change the power of the spell.
"CAST_TIME:<ElementTag(Decimal)>" to change the cast time.
"COOLDOWN:<ElementTag(Number)>" to change the cooldown.
"REAGENT:<TYPE>:<ElementTag(Number)>" to change the reagent cost of the given type. Valid types are: mana, health, hunger, experience, levels, durability, money
"REAGANT:VARIABLE:<NAME>:<ElementTag(Decimal)>" to change the reagant cost for the given variable name.
"REAGENT:ITEMS:<ListTag(ItemTag)>" to change the reagent item cost.
"CLEAR_REAGENTS" to clear away all reagent costs.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, MagicSpells
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/magicspells/SpellCastScriptEvent.java#L26

Namemagicspells entity completes spell
Event Lines magicspells entity completes spell
magicspells <entity> completes spell
Triggerswhen the spell is done and everything has been handled.
Generated Exampleson magicspells entity completes spell:
on magicspells fish completes spell:
after magicspells entity completes spell:
after magicspells fox completes spell:
Has PlayerWhen the caster is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.spell_name> returns the name of the spell.
<context.caster> returns the entity that casted the spell.
<context.power> returns an ElementTag(Decimal) of the power of the spell.
<context.cooldown> returns an ElementTag(Decimal) of the cooldown of the spell.
GroupDepenizen
RequiresDepenizen, MagicSpells
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/magicspells/SpellCastedScriptEvent.java#L15

Namemagicspells player learns spell
Event Lines magicspells player learns spell
Triggerswhen a player is about to learn a spell.
Generated Examplesafter magicspells player learns spell:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.spell_name> returns the name of the spell.
<context.source> returns the source. Can either be SPELLBOOK, TEACH, TOME or OTHER
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, MagicSpells
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/magicspells/SpellLearnScriptEvent.java#L15

Namemagicspells player mana change
Event Lines magicspells player mana change
Triggerswhen a player's mana value changes.
Generated Exampleson magicspells player mana change:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.old_mana> returns the old amount of mana.
<context.new_mana> returns the new amount of mana.
<context.max_mana> returns maximum mana the player can have.
<context.reason> returns the reason of the change. Can either be POTION, REGEN, SPELL_COST or OTHER
DetermineElementTag(Number) to set a new mana value.
GroupDepenizen
RequiresDepenizen, MagicSpells
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/magicspells/ManaChangeScriptEvent.java#L15

Namemcmmo player activates ability for skill
Event Lines mcmmo player activates <ability> for <skill>
Triggerswhen a player activates mcmmo ability.
Generated Examplesafter mcmmo player activates ability for skill:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.skill> returns the name of the skill that the ability comes from.
(Based on the mcMMO language file).
<context.ability> returns the name of the ability.
<context.skill_level> returns the skill level of the skill from the ability.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, mcMMO
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mcmmo/mcMMOPlayerAbilityActivateScriptEvent.java#L17

Namemcmmo player deactivates ability for skill
Event Lines mcmmo player deactivates <ability> for <skill>
Triggerswhen a player deactivates mcmmo ability.
Generated Exampleson mcmmo player deactivates ability for skill:
after mcmmo player deactivates ability for skill:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.skill> returns the name of the skill that the ability comes from.
(Based on the mcMMO language file).
<context.ability> returns the name of the ability.
<context.skill_level> returns the skill level from the ability.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, mcMMO
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mcmmo/mcMMOPlayerAbilityDeactivateScriptEvent.java#L17

Namemcmmo player gains xp for skill
Event Lines mcmmo player gains xp for <skill>
Triggerswhen a player gains mcMMO xp.
Generated Exampleson mcmmo player gains xp for skill:
after mcmmo player gains xp for skill:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.skill> returns the name of the skill that the player gained xp for.
(Based on the mcMMO language file).
<context.xp> returns the amount of xp gained.
<context.cause> returns the cause of the xp gain.
Will be one of: 'PVP', 'PVE', 'VAMPIRISM', 'SHARED_PVP', 'SHARED_PVE', 'COMMAND', 'UNKNOWN'.
DetermineElementTag(Decimal) to set the XP gained.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, mcMMO
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mcmmo/mcMMOPlayerGainsXPScriptEvent.java#L17

Namemcmmo player levels down skill
Event Lines mcmmo player levels down <skill>
Triggerswhen a player loses levels for an mcMMO skill.
Generated Examplesafter mcmmo player levels down skill:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.skill> returns the name of the skill that lost levels. (Based on the mcMMO language file).
<context.levels_lost> returns the number of levels lost.
<context.old_level> returns the old level of the skill.
<context.new_level> returns the new level of the skill.
<context.cause> returns the cause of the level loss.
Will be one of: 'PVP', 'PVE', 'VAMPIRISM', 'SHARED_PVP', 'SHARED_PVE', 'COMMAND', 'UNKNOWN'.
DetermineElementTag(Number) to set the number of levels to gain.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, mcMMO
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mcmmo/mcMMOPlayerLevelDownScriptEvent.java#L17

Namemcmmo player levels up skill
Event Lines mcmmo player levels up <skill>
Triggerswhen a player levels up an mcMMO skill.
Generated Examplesafter mcmmo player levels up skill:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.skill> returns the name of the skill that levelled up. (Based on the mcMMO language file).
<context.levels_gained> returns the number of levels gained.
<context.old_level> returns the old level of the skill.
<context.new_level> returns the new level of the skill.
<context.cause> returns the cause of the level gain.
Will be one of: 'PVP', 'PVE', 'VAMPIRISM', 'SHARED_PVP', 'SHARED_PVE', 'COMMAND', 'UNKNOWN'.
DetermineElementTag(Number) to set the number of levels to gain.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, mcMMO
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mcmmo/mcMMOPlayerLevelUpScriptEvent.java#L17

Namemcmmo player skill level changes
Event Lines mcmmo player <skill> level changes
Triggerswhen a player's mcmmo skill level changes.
Generated Examplesafter mcmmo player skill level changes:
on mcmmo player skill level changes:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.skill> returns the name of the skill that changed level. (Based on the mcMMO language file).
<context.level> returns the level the skill changed to.
<context.cause> returns the cause of the level change.
Will be one of: 'PVP', 'PVE', 'VAMPIRISM', 'SHARED_PVP', 'SHARED_PVE', 'COMMAND', 'UNKNOWN'.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, mcMMO
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mcmmo/mcMMOPlayerLevelChangeScriptEvent.java#L17

Namemobarena arena ends
Event Lines mobarena <arena> ends
Triggerswhen a mobarena ends.
Generated Exampleson mobarena arena ends:
Contexts<context.arena> Returns the arena which ended.
<context.wave> Returns the number of the final wave.
GroupDepenizen
RequiresDepenizen, MobArena
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mobarena/MobArenaEndsScriptEvent.java#L16

Namemobarena arena starts
Event Lines mobarena <arena> starts
Triggerswhen a mobarena starts.
Generated Examplesafter mobarena arena starts:
on mobarena arena starts:
Contexts<context.arena> Returns the arena which started.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, MobArena
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mobarena/MobArenaStartsScriptEvent.java#L15

Namemobarena arena wave changes
Event Lines mobarena <arena> wave changes
Triggerswhen a wave changes in a MobArena.
Generated Exampleson mobarena arena wave changes:
after mobarena arena wave changes:
Contexts<context.arena> Returns the arena in which the wave change occured.
<context.wave> Returns the number of the new wave.
GroupDepenizen
RequiresDepenizen, MobArena
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mobarena/MobArenaWaveChangesScriptEvent.java#L15

Namemythicmob mob despawns
Event Lines mythicmob <mob> despawns
Triggerswhen a MythicMob despawns.
Generated Examplesafter mythicmob mob despawns:
on mythicmob mob despawns:
Contexts<context.mob> Returns the MythicMob that is despawning.
<context.entity> Returns the EntityTag for the MythicMob.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, MythicMobs
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mythicmobs/MythicMobsDespawnEvent.java#L14

Namemythicmob mob dies|death|killed
Event Lines mythicmob <mob> dies|death|killed
Triggerswhen a MythicMob dies.
Generated Exampleson mythicmob mob dies:
after mythicmob mob dies:
Switchesby:<entity> to only process the event if the killer matches a specified entity type.
Contexts<context.mob> Returns the MythicMob that has been killed.
<context.entity> Returns the EntityTag for the MythicMob.
<context.killer> returns the EntityTag that killed the MythicMob (if available).
<context.level> Returns the level of the MythicMob.
<context.drops> Returns a list of items dropped.
DetermineListTag(ItemTag) to specify new items to be dropped.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, MythicMobs
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mythicmobs/MythicMobsDeathEvent.java#L22

Namemythicmob mob spawns
Event Lines mythicmob <mob> spawns
Triggerswhen a MythicMob spawns.
Generated Exampleson mythicmob mob spawns:
Contexts<context.mob> Returns the MythicMob that is spawning.
<context.entity> Returns the EntityTag for the MythicMob.
<context.location> Returns the LocationTag of where the MythicMob will spawn.
<context.from_spawner> Returns true if the mob was from a spawner.
<context.spawner_location> Returns the LocationTag of the spawner that spawned the mob, if any.
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, MythicMobs
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/mythicmobs/MythicMobsSpawnEvent.java#L17

Namenoteblockapi song song ends
Event Lines noteblockapi song (<song>) ends
Triggerswhen a song playing through NoteBlockAPI ends.
Generated Exampleson noteblockapi song ends:
after noteblockapi song song ends:
Contexts<context.song> returns the file name of the song.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, NoteBlockAPI
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/noteblockapi/NoteBlockAPISongEndsScriptEvent.java#L19

Nameplayer completes skyblock challenge
Event Lines player completes skyblock challenge
Triggerswhen a player completes a skyblock challenge.
Generated Examplesafter player completes skyblock challenge:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.challenge> Returns the name of the challenge.
<context.xp_reward> Return the amount of experience to be rewarded.
<context.money_reward> Returns the amount of money to be rewarded.
<context.item_rewards> Returns a list of items to be awarded.
NOTE: item rewards is dependant on how the plugin handles item rewards. Untested and no guarantee of working.
GroupDepenizen
RequiresDepenizen, A SkyBlock
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/askyblock/PlayerCompletesSkyBlockChallengeScriptEvent.java#L17

Nameplayer creates shopkeeper
Event Lines player creates shopkeeper
Triggerswhen a player creates a shopkeeper.
Generated Exampleson player creates shopkeeper:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.location> Returns the LocationTag of the shopkeeper being created.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, ShopKeepers
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/shopkeepers/ShopKeeperCreatedScriptEvent.java#L14

Nameplayer exits skyblock
Event Lines player exits skyblock
Triggerswhen a player leaves a skyblock island.
Generated Exampleson player exits skyblock:
after player exits skyblock:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.owner> Returns the owner of the island.
<context.island_location> Returns the location of the island.
<context.location> Returns the location the player exited at.
GroupDepenizen
RequiresDepenizen, A SkyBlock
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/askyblock/PlayerExitsSkyBlockScriptEvent.java#L15

Nameplayer god mode enabled
Event Lines player god mode enabled
player god mode disabled
player god mode status changes
Triggerswhen a player's god mode status changes.
Generated Examplesafter player god mode enabled:
after player god mode disabled:
on player god mode status changes:
on player god mode disabled:
after player god mode status changes:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.status> Returns the player's god mode status.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Essentials
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/essentials/PlayerGodModeStatusScriptEvent.java#L15

Nameplayer goes afk
Event Lines player goes afk
player returns from afk
player afk status changes
Triggerswhen a player's afk status changes.
Generated Examplesafter player goes afk:
after player returns from afk:
on player afk status changes:
on player returns from afk:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.status> Returns the player's afk status.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Essentials
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/essentials/PlayerAFKStatusScriptEvent.java#L15

Nameplayer jailed
Event Lines player jailed
player unjailed
player un-jailed
player jail status changes
Triggerswhen a player's jail status changes.
Generated Exampleson player jailed:
after player unjailed:
after player un-jailed:
after player jail status changes:
after player jailed:
on player un-jailed:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.status> Returns the player's jail status.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Essentials
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/essentials/PlayerJailStatusScriptEvent.java#L15

Nameplayer muted
Event Lines player muted
player unmuted
player un-muted
player mute status changes
Triggerswhen a player is muted or un-muted.
Generated Examplesafter player muted:
after player unmuted:
on player un-muted:
after player mute status changes:
on player unmuted:
after player un-muted:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.status> Returns whether the player is muted.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Essentials
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/essentials/PlayerMuteStatusScriptEvent.java#L15

Nameplotsquared player claims plotsquaredplot
Event Lines plotsquared player claims <plotsquaredplot>
Triggerswhen a player claims a plot.
Generated Examplesafter plotsquared player claims plotsquaredplot:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.plot> returns the plot the player claimed.
<context.auto> returns true if the plot was claimed automatic.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, PlotSquared
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/plotsquared/PlayerClaimPlotScriptEvent.java#L17

Nameplotsquared player enters plotsquaredplot
Event Lines plotsquared player enters <plotsquaredplot>
Triggerswhen a player enters a plot.
Generated Exampleson plotsquared player enters plotsquaredplot:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.plot> returns the plot the player entered.
GroupDepenizen
RequiresDepenizen, PlotSquared
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/plotsquared/PlayerEntersPlotScriptEvent.java#L16

Nameplotsquared player leaves|exits plotsquaredplot
Event Lines plotsquared player leaves|exits <plotsquaredplot>
Triggerswhen a player leaves a plot.
Generated Exampleson plotsquared player leaves plotsquaredplot:
after plotsquared player exits plotsquaredplot:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.plot> returns the plot the player left.
GroupDepenizen
RequiresDepenizen, PlotSquared
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/plotsquared/PlayerLeavePlotScriptEvent.java#L16

Nameplotsquared plot clear|clears plotsquaredplot
Event Lines plotsquared plot clear|clears <plotsquaredplot>
Triggerswhen a plot is cleared.
Generated Examplesafter plotsquared plot clear plotsquaredplot:
after plotsquared plot clears plotsquaredplot:
Contexts<context.plot> returns the plot that is cleared.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, PlotSquared
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/plotsquared/PlotClearScriptEvent.java#L14

Nameproxy server command command
Event Lines proxy server (<command>) command
Triggerswhen a player runs a command on the bungee proxy server.
Generated Examplesafter proxy server command:
after proxy server command command:
Has Playerwhen the player has been on this specific server before. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.sender> returns the name of the command sender.
<context.sender_id> returns the UUID of the command sender, if available.
<context.command> returns the command executed.
Determine"COMMAND:<ElementTag>" to change the command that will be ran.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, DepenizenBungee, BungeeCord
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/bungee/BungeeProxyServerCommandScriptEvent.java#L18

Nameproxy server list ping
Event Lines proxy server list ping
Triggerswhen the bungeecord server is pinged and will return server details.
Generated Exampleson proxy server list ping:
after proxy server list ping:
Contexts<context.address> returns the source address of the ping.
<context.current_players> returns the number of players listed as currently online.
<context.max_players> return the maximum number of players that can join according to the list.
<context.motd> returns the server MOTD that will be displayed.
<context.protocol> returns the protocol number that will be given to the ping requester.
<context.version> returns the name of the server version that will be given to the ping requester.
Determine"MAX_PLAYERS:<ElementTag(Number)>" to change the listed maximum number of players.
"VERSION:<ElementTag>" to change the listed server version.
"MOTD:<ElementTag>" to change the server MOTD that will be displayed.
"PLAYERS:<List(PlayerTag)>" to set what players are displayed in the "online players sample" view of the list ping.
"ALTERNATE_PLAYER_TEXT:<ListTag>" to set custom text for the player list section of the server status. (Requires "Allow restricted actions" in Denizen/config.yml). Usage of this to present lines that look like player names (but aren't) is forbidden.
GroupDepenizen
RequiresDepenizen, DepenizenBungee, BungeeCord
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/bungee/BungeeProxyServerListPingScriptEvent.java#L21

Namepvparena player exits
Event Lines pvparena player exits
Triggerswhen a player exit a pvparena (won, loose, leave, disconnect etc.)
Generated Exampleson pvparena player exits:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.arena> returns the arena denizen object.
GroupDepenizen
RequiresDepenizen, PVPArena
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/pvparena/PlayerExitsPVPArenaScriptEvent.java#L14

Namepvparena player joins
Event Lines pvparena player joins
Triggerswhen a player joins a pvparena.
Generated Examplesafter pvparena player joins:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.arena> returns the arena denizen object.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, PVPArena
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/pvparena/PlayerJoinsPVPArenaScriptEvent.java#L14

Namepvparena player leaves
Event Lines pvparena player leaves
Triggerswhen a player leaves a pvparena.
Generated Examplesafter pvparena player leaves:
on pvparena player leaves:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.arena> returns the arena denizen object.
GroupDepenizen
RequiresDepenizen, PVPArena
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/pvparena/PlayerLeavesPVPArenaScriptEvent.java#L14

Namepvparena starts
Event Lines pvparena starts
Triggerswhen a pvparena starts.
Generated Examplesafter pvparena starts:
Contexts<context.fighters> returns a list of all fighters in the arena.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, PVPArena
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/pvparena/PVPArenaStartsScriptEvent.java#L17

Namequests player changes quest stage
Event Lines quests player changes <quest> stage
Triggerswhen a player changes stage in a quest from the Quests plugin. Note that stages don't have unique IDs.
Generated Examplesafter quests player changes quest stage:
on quests player changes quest stage:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.quest> returns the ID of the quest.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Quests
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/quests/PlayerQuestStageChangeScriptEvent.java#L16

Namequests player completes quest
Event Lines quests player completes <quest>
Triggerswhen a player completes a quest from the Quests plugin.
Generated Examplesafter quests player completes quest:
on quests player completes quest:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.quest> returns the ID of the quest.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Quests
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/quests/PlayerCompletesQuestScriptEvent.java#L16

Namequests player fails quest
Event Lines quests player fails <quest>
Triggerswhen a player fails a quest from the Quests plugin.
Generated Examplesafter quests player fails quest:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.quest> returns the ID of the quest.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Quests
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/quests/PlayerFailsQuestScriptEvent.java#L16

Namequests player starts quest
Event Lines quests player starts <quest>
Triggerswhen a player starts a quest from the Quests plugin.
Generated Examplesafter quests player starts quest:
on quests player starts quest:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.quest> returns the ID of the quest.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Quests
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/quests/PlayerStartsQuestScriptEvent.java#L16

Nameresidence deleted
Event Lines residence deleted
Triggerswhen a Residence gets deleted.
Generated Examplesafter residence deleted:
Has Playeronly when the cause is PLAYER_DELETE. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Switchescause:<cause> to only process the event if the cause of deletion matches.
Contexts<context.cause> Returns the cause of deletion. Can be: PLAYER_DELETE, OTHER or LEASE_EXPIRE
<context.residence> Returns the ResidenceTag of the deleted residence.
GroupDepenizen
RequiresDepenizen, Residence
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/residence/ResidenceDeletedScriptEvent.java#L15

Nameresidence player creates residence
Event Lines residence player creates residence
Triggerswhen a player creates a Residence.
Generated Examplesafter residence player creates residence:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.residence> Returns the created ResidenceTag.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Residence
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/residence/PlayerCreatesResidenceScriptEvent.java#L14

Nameresidence player enters residence
Event Lines residence player enters <residence>
Triggerswhen a player enters a Residence.
Generated Examplesafter residence player enters residence:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.residence> Returns the Residence the player entered.
GroupDepenizen
RequiresDepenizen, Residence
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/residence/PlayerEntersResidenceScriptEvent.java#L14

Nameresidence player exits residence
Event Lines residence player exits <residence>
Triggerswhen a player exits a Residence.
Generated Exampleson residence player exits residence:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.residence> Returns the Residence the player exited.
GroupDepenizen
RequiresDepenizen, Residence
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/residence/PlayerExitsResidenceScriptEvent.java#L14

Nameresidence raid ends
Event Lines residence raid ends
Triggerswhen a Residence raid ends.
Generated Examplesafter residence raid ends:
Switchesresidence:<residence> to only process the event if the residence matches the input.
Contexts<context.residence> Returns a ResidenceTag of the residence that was being raided.
GroupDepenizen
RequiresDepenizen, Residence
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/residence/ResidenceRaidEndsScriptEvent.java#L13

Nameresidence raid starts
Event Lines residence raid starts
Triggerswhen players start raiding a Residence.
Generated Exampleson residence raid starts:
Switchesresidence:<residence> to only process the event if the residence matches the input.
Contexts<context.residence> Returns a ResidenceTag of the residence that is being attacked.
<context.defenders> Returns a ListTag(PlayerTag) of the players defending the Residence.
<context.attackers> Returns a ListTag(PlayerTag) of the players attacking the Residence.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Residence
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/residence/ResidenceRaidStartsScriptEvent.java#L15

Namesentinel npc attacks
Event Lines sentinel npc attacks
Triggerswhen a Sentinel-powered NPC attacks a target.
Generated Exampleson sentinel npc attacks:
Has PlayerWhen the attacked entity is a player. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Has NPCAlways.
Switchesentity:<entity> to only fire the event if the target entity matches the given entity matcher.
Contexts<context.entity> returns the entity that the NPC is attacking.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, Sentinel
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/sentinel/SentinelAttackScriptEvent.java#L16

Namesentinel npc has no more targets
Event Lines sentinel npc has no more targets
Triggerswhen a Sentinel-powered NPC has no more targets to fight and can return to normal idle behavior.
Generated Examplesafter sentinel npc has no more targets:
Has NPCAlways.
GroupDepenizen
RequiresDepenizen, Sentinel
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/sentinel/SentinelNoMoreTargetsScriptEvent.java#L13

Nameshopkeeper trade
Event Lines shopkeeper trade
Triggerswhen a trade with a shopkeeper is completed.
Generated Exampleson shopkeeper trade:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.recipe> Returns a ListTag(ItemTag) of the recipe for this trade.
<context.shopkeeper> Returns the ShopKeeperTag of the ShopKeeper that the trade occurred with.
CancellableTrue - This adds <context.cancelled> and determine 'cancelled' or 'cancelled:false'
GroupDepenizen
RequiresDepenizen, ShopKeepers
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/shopkeepers/ShopKeeperTradeScriptEvent.java#L15

Nameskillapi player downgrades skill
Event Lines skillapi player downgrades <skill>
Triggerswhen a player downgrades a skill in SkillAPI.
Generated Examplesafter skillapi player downgrades skill:
on skillapi player downgrades skill:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.level> returns the level the player went down to.
<context.refund> returns how much the the player was refunded.
<context.skill_name> returns the name of the skill downgraded.
DetermineNone
Has LocationTrue - This adds the switches 'in:<area>', 'location_flagged:<flag>', ...
GroupDepenizen
RequiresDepenizen, SkillAPI
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/events/skillapi/SkillAPIPlayerDowngradesSkillScriptEvent.java#L17

Nameskillapi player levels up
Event Lines skillapi player levels up
Triggerswhen a player levels up in SkillAPI.
Generated Examplesafter skillapi player levels up:
on skillapi player levels up:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.level> returns the level the player went up to.