Skip to content

Events

Events are registered inside onEnable() using events.on():

js
events.on("EventName", function(event) {
    // do something with event
});

TIP

Event names use PascalCase without suffix: "PlayerJoin", "BlockBreak". NOT "PlayerJoinEvent", NOT "player_join".

Player Events

PlayerJoin

Fires when a player joins the server.

js
events.on("PlayerJoin", function(event) {
    var player = event.getPlayer();
    player.sendMessage("Welcome!");
    event.setJoinMessage("§e" + player.getName() + " joined the server.");
});
MethodReturnsDescription
getPlayer()playerThe player who joined
getJoinMessage()stringCurrent join message
setJoinMessage(msg)Change the join message
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel/uncancel the event

PlayerQuit

Fires when a player leaves the server.

js
events.on("PlayerQuit", function(event) {
    var player = event.getPlayer();
    event.setQuitMessage("§c" + player.getName() + " left the server.");
});
MethodReturnsDescription
getPlayer()playerThe player who left
getQuitMessage()stringCurrent quit message
setQuitMessage(msg)Change the quit message
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the quit message

PlayerChat

Fires when a player sends a chat message.

js
events.on("PlayerChat", function(event) {
    var player = event.getPlayer();
    var msg = event.getMessage();
    event.setMessage("§7[§f" + player.getName() + "§7] §r" + msg);
});
MethodReturnsDescription
getPlayer()playerThe player who wrote
getMessage()stringThe original message
setMessage(msg)Change the message
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the message

PlayerMove

Fires when a player moves. Warning: fires very frequently.

js
events.on("PlayerMove", function(event) {
    if (event.getToY() < 0) {
        event.setCancelled(true);
    }
});
MethodReturnsDescription
getPlayer()playerThe player who moved
getFromX/Y/Z()numberOrigin position
getToX/Y/Z()numberDestination position
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the movement

PlayerJump

Fires when a player jumps.

MethodReturnsDescription
getPlayer()playerThe player who jumped
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the jump

PlayerTeleport

Fires when a player is teleported.

js
events.on("PlayerTeleport", function(event) {
    event.setPosition(0, 64, 0);
});
MethodReturnsDescription
getPlayer()playerThe teleported player
getX/Y/Z()numberDestination position
setPosition(x, y, z)Change destination
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the teleport

PlayerDeath

Fires when a player dies.

js
events.on("PlayerDeath", function(event) {
    event.setKeepInventory(true);
    event.getPlayer().sendMessage("§cYou died but kept your inventory.");
});
MethodReturnsDescription
getPlayer()playerThe player who died
getKeepInventory()booleanWhether inventory is kept
setKeepInventory(bool)Set inventory keeping
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the death

PlayerRespawn

Fires when a player respawns after dying.

js
events.on("PlayerRespawn", function(event) {
    event.setPosition(0, 64, 0);
});
MethodReturnsDescription
getPlayer()playerThe respawned player
getX/Y/Z()numberRespawn position
setPosition(x, y, z)Change respawn position
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the respawn

PlayerHurt

Fires when a player takes damage.

js
events.on("PlayerHurt", function(event) {
    event.setDamage(event.getDamage() / 2); // halve damage
    // or: event.setCancelled(true); // god mode
});
MethodReturnsDescription
getPlayer()playerThe hurt player
getDamage()numberDamage amount
setDamage(n)Change damage amount
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the damage

PlayerHeal

Fires when a player heals.

MethodReturnsDescription
getPlayer()playerThe healed player
getHealth()numberHeal amount
setHealth(n)Change heal amount
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the heal

PlayerFoodLoss

Fires when a player loses hunger.

MethodReturnsDescription
getPlayer()playerThe player
getFrom()numberPrevious hunger level (0-20)
getTo()numberNew hunger level
setTo(n)Change new hunger level
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the hunger loss

PlayerExperienceGain

Fires when a player gains experience.

js
events.on("PlayerExperienceGain", function(event) {
    event.setAmount(event.getAmount() * 2); // double XP
});
MethodReturnsDescription
getPlayer()playerThe player
getAmount()numberXP amount
setAmount(n)Change XP amount
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the XP gain

PlayerToggleSprint

Fires when a player toggles sprinting.

MethodReturnsDescription
getPlayer()playerThe player
isSprinting()booleantrue if started sprinting
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the toggle

PlayerToggleSneak

Fires when a player toggles sneaking.

MethodReturnsDescription
getPlayer()playerThe player
isSneaking()booleantrue if started sneaking
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the toggle

PlayerAttackEntity

Fires when a player attacks an entity.

js
events.on("PlayerAttackEntity", function(event) {
    if (event.isCritical()) {
        event.getPlayer().sendMessage("§cCritical hit!");
    }
});
MethodReturnsDescription
getPlayer()playerThe attacking player
getForce()numberAttack force
isCritical()booleanWhether it was a critical hit
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the attack

PlayerItemUse

Fires when a player uses an item (right-click).

MethodReturnsDescription
getPlayer()playerThe player
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel item use

PlayerItemDrop

Fires when a player drops an item.

MethodReturnsDescription
getPlayer()playerThe player
getItemCount()numberNumber of items dropped
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the drop

PlayerItemPickup

Fires when a player picks up an item.

MethodReturnsDescription
getPlayer()playerThe player
getItemCount()numberNumber of items picked up
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the pickup

Block Events

BlockBreak

Fires when a player breaks a block.

js
events.on("BlockBreak", function(event) {
    if (event.getBlockY() < 10) {
        event.setCancelled(true);
        event.getPlayer().sendMessage("§cCan't break blocks here.");
    }
});
MethodReturnsDescription
getPlayer()playerThe player who broke
getBlockX/Y/Z()numberBlock position
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the break

BlockPlace

Fires when a player places a block.

MethodReturnsDescription
getPlayer()playerThe player who placed
getBlockX/Y/Z()numberBlock position
isCancelled()booleanWhether event is cancelled
setCancelled(bool)Cancel the placement

Dragonfly Script API