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 379 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 Examplesafter red_sandstone_slab being built:
after cauldron being built:
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 Exampleson rail burns:
after purpur_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 birch_pressure_plate smelts item:
on white_candle_cake smelts red_sandstone:
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 block dispenses polished_andesite:
on block dispenses end_stone_brick_slab:
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 cherry_hanging_sign explodes:
on 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 Examplesafter dark_oak_slab fades:
after red_nether_bricks 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 Examplesafter potatoes falls:
after block 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 Exampleson block forms:
on ladder 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 block grows:
after crying_obsidian 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:
after 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 green_stained_glass_pane shears vehicle:
on blue_candle shears dragon_fireball:
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 Exampleson petrified_oak_slab tries to dispense dark_oak_door:
on block 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 Exampleson brewing stand fueled with decorated_pot:
on 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 Examplesafter 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 lowers:
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 Examplesafter furnace burns waxed_cut_copper:
after furnace burns deepslate_tile_wall:
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 Exampleson leaves decay:
after block decay:
after leaves 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 Exampleson liquid spreads:
on dragon egg moves:
after 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 liquid level changes:
on 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:
on stone_brick_stairs extends:
after cherry_wall_sign 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:
after block retracts:
on piston retracts:
after magenta_concrete_powder 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 Examplesafter tnt primes:
on 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 Examplesafter waxed_exposed_cut_copper_stairs destroyed by explosion:
after block 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 block physics:
after verdant_froglight 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 Exampleson 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 Exampleson sponge absorbs water:
after 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 Exampleson console output:
after 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 Examplesafter delta time secondly:
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 Examplesafter pre script reload:
on 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 Exampleson redis pubsub message:
after 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:
on script reload:
on reload scripts:
after script reload:
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 Examplesafter scripts loaded:
on 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 Exampleson script generates error:
after 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:
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 Exampleson creeper powered:
after creeper powered:
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 Examplesafter ender_dragon changes phase:
on entity changes phase:
after player 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 Exampleson npc breaks hanging because cause:
on entity 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 Exampleson entity breeds:
on living 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 Examplesafter entity 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 entity changes air level:
after squid 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 fish changes cut_copper_stairs:
on firework changes end_stone_bricks into birch_pressure_plate:
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 Examplesafter living changes food level:
on minecart_hopper 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 hoglin changes pose:
after animal 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 monster combusts:
on entity 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 Exampleson entity creates portal:
after mob 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 trident dies:
after strider 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 Exampleson entity drops item:
after hanging drops warped_sign:
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 minecart_hopper 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 entity enters entity:
after entity enters vehicle:
on hanging enters zoglin:
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 Exampleson entity exits portal:
on endermite 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 Exampleson entity exits vehicle:
on skeleton exits shulker_bullet:
after entity exits vehicle:
after marker exits mob:
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 Exampleson splash_potion explodes:
after entity 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 Examplesafter entity explosion primes:
on 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 Examplesafter rabbit forms fire_coral_fan:
after entity forms chain:
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 Examplesafter monster goes into block:
on entity goes into block:
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 Exampleson mob heals because cause:
after iron_golem 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 animal interacts with potted_cactus:
on donkey interacts with block:
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 mob potion effects modified:
on entity potion effects change_action:
after monster potion effects modified:
after hanging 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 Exampleson vehicle resurrected:
after monster 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.
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#L14

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:
on piglin_brute shoots birch_wood:
on entity shoots bow:
after projectile shoots dark_oak_button:
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 Exampleson entity tamed:
after entity tamed:
on player tames entity:
after player tames minecart_tnt:
after player tames entity:
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 Examplesafter entity targets minecart_furnace because cause:
after minecart_hopper targets entity because cause:
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 Examplesafter entity teleports:
on 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 horse starts gliding:
on entity toggles 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 witch toggles swimming:
on fireball stops 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 monster transforms:
on entity transforms:
after living transforms:
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 entity unleashed because reason:
on ender_pearl unleashed:
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:
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:
after 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 Examplesafter horse jumps:
on entity jumps:
on giant 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 Examplesafter pig zapped:
on 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>', ...
GroupEntity
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/entity/PigZappedScriptEvent.java#L13

Namepiglin barter
Event Lines piglin barter
Triggerswhen a piglin completes a barter.
Generated Exampleson piglin barter:
after 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 Exampleson projectile hits:
after snowball 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 Exampleson projectile hits block/entity:
after hanging shoots mangrove_slab:
after arrow hits block/entity:
after entity shoots potted_warped_fungus 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:
on mob launched:
after projectile launched:
on entity 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 Exampleson sheep regrows wool:
after 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 Examplesafter slime splits into #:
on slime splits into #:
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 animal:
on spawner spawns trident:
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:
on 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 Examplesafter 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 Examplesafter villager replenishes trade:
on 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 Examplesafter arrow despawns:
on item_frame 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 exits area:
on zombie 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 entity killed:
on ravager killed by entity:
after entity kills bee:
after chest_boat killed:
on polar_bear killed:
on hanging kills ravager:
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 Examplesafter lightning spawns:
after fish spawns because cause:
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 color:
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 Exampleson inventory picks up black_candle:
on inventory picks up item:
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 item despawns:
after item 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 Exampleson item enchanted:
after red_terracotta 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 pointed_dripstone merges:
on dark_oak_leaves 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 item moves from inventory to dispenser:
after item moves from inventory to inventory:
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 Exampleson oak_fence_gate recipe formed:
after cut_red_sandstone 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 blue_stained_glass_pane spawns:
on glow_item_frame 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 Examplesafter npc opens block:
after npc opens budding_amethyst:
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:
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 Exampleson npc completes navigation:
on npc begins 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 birch_pressure_plate drops dark_oak_slab from breaking:
on block drops item from breaking:
after infested_mossy_stone_bricks drops chiseled_nether_bricks 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 entity picks up item:
after entity takes light_blue_concrete_powder:
after living picks up packed_ice:
on hanging takes mushroom_stem:
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 Examplesafter 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 Examplesafter player breaks block:
on player breaks crimson_stem:
on player breaks block:
on player breaks bamboo_fence_gate:
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 blue_shulker_box:
after player breaks held witch_spawn_egg:
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 gamemode to gamemode
Event Lines player changes gamemode (to <gamemode>)
Triggerswhen a player's gamemode is changed.
Generated Exampleson player changes gamemode:
after 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:
on 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 Examplesafter player changes sign:
after player changes wither_skeleton_skull:
on player changes material:
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 Exampleson player changes world from survivalland to world_the_end:
after player changes world from world_nether to world:
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:
after 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 click_type clicks item in inventory:
after player clicks in lectern:
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 Examplesafter player closes inventory:
after player closes enchanting:
on player closes inventory:
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 Examplesafter player completes advancement:
on 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:
after player consumes infested_deepslate:
on player consumes item:
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 Examplesafter player crafts item:
on player crafts copper_ore:
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 block:
on player damages block:
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 red_sandstone_slab:
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:
after player signs book:
on player edits book:
on 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 Examplesafter player empties bucket:
after player empties item:
on player empties bucket:
on 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 Exampleson player enters bed:
after 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 Exampleson player fills bucket:
on player fills item:
after player fills brown_dye:
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 Examplesafter player fishes cow while state:
after player fishes:
after player fishes 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:
on player pink_banner takes damage:
after player deepslate_tile_stairs 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 Exampleson player joins:
after player join:
after player joins:
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 Examplesafter 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:
on player leashes hanging:
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 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 Examplesafter player mends item:
after player mends twisting_vines:
on player mends item:
on player mends infested_cracked_stone_bricks:
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 ender_chest:
on player opens inventory:
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 Exampleson 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:
after player prepares item enchant:
on player prepares string 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:
after player quits:
on 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 Examplesafter 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:
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 Exampleson 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 Examplesafter player shears mob:
after player shears color sheep:
after 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 iron_trapdoor:
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:
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 Examplesafter player statistic increments:
after player statistic statistic increments:
on player 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 Examplesafter player steers entity:
after player steers blaze:
on 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:
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:
on player takes item from furnace:
after player takes deepslate_iron_ore 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 Examplesafter player takes item 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 hatching egg:
after 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 Examplesafter player toggles flying:
after player starts flying:
on player stops 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 toggles sneaking:
on player starts 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 Examplesafter player toggles sprinting:
on player stops 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 Examplesafter player triggers raid:
on 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 Exampleson player uses portal:
after 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 Examplesafter player walks over notable:
after player walks over location:
on 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 Exampleson resource pack status:
after 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 enters biome:
on player enters 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:
on 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 for the first time:
after player first login:
after player logs in:
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 Examplesafter player prelogin:
on 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 stripped_warped_hyphae:
on player prepares anvil craft 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 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:
on player prepares smithing item:
on player prepares smithing golden_shovel:
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 toggles white_candle:
on player lowers gray_concrete_powder:
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 Examplesafter 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 Exampleson 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 Examplesafter player right clicks entity:
on player right clicks trader_llama:
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 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 cherry_slab:
after player right clicks gray_shulker_box:
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.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/events/player/PlayerClicksBlockScriptEvent.java#L22

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 mangrove_sign:
after player steps on waxed_weathered_cut_copper:
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 Examplesafter 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 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 Examplesafter 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 Examplesafter 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:
after 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 Examplesafter command:
after command_name command:
on 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 Exampleson vehicle collides with block:
on vehicle collides with material:
after vehicle collides with block:
after minecart collides with sand:
after vehicle collides with stripped_cherry_wood:
after minecart collides with block:
after vehicle collides with spruce_sign:
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 Exampleson vehicle created:
after minecart created:
after 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:
on vehicle destroyed:
on entity destroys vehicle:
on player destroys vehicle:
after entity destroys vehicle:
after monster destroys vehicle:
after animal 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 Examplesafter 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 Examplesafter 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:
after 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 Exampleson lingering potion splashes:
after lingering campfire splashes:
after lingering potion splash:
on lingering diorite_stairs splashes:
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 Exampleson loot generates:
after 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:
on 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 Examplesafter 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 Exampleson 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:
on 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 Examplesafter structure/plant grows naturally:
on structure/plant grows from bonemeal:
after structure/plant grows:
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 Examplesafter thunder clears:
after thunder begins:
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 survivalland:
after time 0-23:
after 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 Exampleson weather rains:
after weather changes:
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_the_end initializes:
on world 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_the_end loads:
after world_nether 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 Examplesafter world unloads:
on world_the_end 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:
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:
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:
on 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 Exampleson 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 Examplesafter 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:
on 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 Examplesafter bigdoors door toggles:
on 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 Examplesafter 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:
on 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 Exampleson 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:
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:
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:
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:
after 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:
after 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 Examplesafter 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:
on 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 Examplesafter 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 Examplesafter 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 Exampleson gp claim created:
after 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 Exampleson gp claim deleted:
after 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 Exampleson jobs player joins job:
after 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 undisguise 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 Exampleson magicspells entity casts spell:
after 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 Examplesafter magicspells entity completes spell:
on magicspells monster completes spell:
on magicspells entity completes spell:
after magicspells living 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 Exampleson magicspells player learns spell:
after 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 Examplesafter magicspells player mana change:
on 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 Exampleson mcmmo player activates ability for skill:
after 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 Examplesafter 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 Examplesafter 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 Exampleson 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 Exampleson 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 Examplesafter 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 Examplesafter mobarena arena wave changes:
on 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 Exampleson mythicmob mob despawns:
after 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 Examplesafter mythicmob mob death:
on mythicmob mob killed:
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 Examplesafter 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 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:
on 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 Examplesafter 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 Examplesafter player exits skyblock:
on 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:
after player god mode status changes:
on 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 Exampleson 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 Examplesafter player jailed:
after player unjailed:
after player un-jailed:
after player jail status changes:
on player jailed:
on player unjailed:
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 Exampleson player muted:
after player unmuted:
on player un-muted:
after player mute status changes:
after player 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:
on 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:
after 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 leaves 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 Exampleson plotsquared plot clear plotsquaredplot:
after plotsquared plot clear 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:
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 Examplesafter pvparena player exits:
on 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 Exampleson pvparena player joins:
after 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 Exampleson 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 Exampleson quests player changes quest stage:
after 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 Exampleson quests player completes quest:
after 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 Exampleson residence deleted:
after 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 Exampleson residence player creates residence:
after 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:
on 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 Examplesafter 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:
on 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 Examplesafter residence raid starts:
on 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 Examplesafter 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.
<context.gained> returns how many levels the player gained.
<context.class> returns the SkillAPIClass the player is leveling up in.
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/SkillAPIPlayerLevelsUpScriptEvent.java#L17

Nameskillapi player unlocks skill
Event Lines skillapi player unlocks <skill>
Triggerswhen a player unlocks a skill in SkillAPI.
Generated Examplesafter skillapi player unlocks skill:
Has PlayerAlways. - this adds switches 'flagged:<flag name>' + 'permission:<node>', in addition to the '<player>' link.
Contexts<context.skill_name> returns the name of the skill unlocked.
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/SkillAPIPlayerUnlocksSkillScriptEvent.java#L17

Nameskillapi player upgrades skill
Event Lines skillapi player upgrades <