Eventos
ScalaPlot publica una serie de eventos personalizados de Bukkit (paquete com.scala.plotAPI.events) que puedes interceptar con un @EventHandler normal, exactamente igual que cualquier otro evento de Bukkit.
Todos los eventos extienden la clase abstracta PlotEvent, que expone:
public abstract class PlotEvent extends Event { public IPlot getPlot();}Muchos eventos también extienden PlotCancellableEvent (que implementa Cancellable), permitiéndote cancelarlos para impedir la acción que los originó.
Lista de eventos
Sección titulada «Lista de eventos»| Evento | Cancelable | Descripción | Métodos adicionales |
|---|---|---|---|
PlotClaimEvent |
✅ | Un jugador reclama una parcela | getPlayer() |
PlotDeleteEvent |
✅ | Se elimina una parcela | getPlayer() |
PlotEnterEvent |
✅ | Un jugador entra en una parcela | getPlayer() |
PlotLeaveEvent |
✅ | Un jugador sale de una parcela | getPlayer() |
PlotOwnerChangeEvent |
✅ | Cambia el propietario de una parcela | getOldOwner(), getNewOwner() |
PlotTrustEvent |
✅ | Un jugador se añade a la lista de confianza | getPlayerId() |
PlotUntrustEvent |
✅ | Un jugador se elimina de la lista de confianza | getPlayerId() |
PlotBanEvent |
✅ | Un jugador es baneado de la parcela | getPlayerId() |
PlotUnbanEvent |
✅ | Un jugador es desbaneado de la parcela | getPlayerId() |
PlotReportEvent |
✅ | Se reporta una parcela (Premium) | getPlayer(), getReason() |
PlotBackupEvent |
✅ | Se crea una copia de seguridad de la parcela | getBackupFilePath(), getBackupFile() |
Ejemplo: bloquear la entrada a una parcela
Sección titulada «Ejemplo: bloquear la entrada a una parcela»import com.scala.plotAPI.events.PlotEnterEvent;import org.bukkit.event.EventHandler;import org.bukkit.event.Listener;
public class MyListener implements Listener {
@EventHandler public void onPlotEnter(PlotEnterEvent event) { if (someCondition(event.getPlayer())) { event.setCancelled(true); event.getPlayer().sendMessage("¡No puedes entrar en esta parcela ahora!"); } }}Ejemplo: reaccionar a un reclamo
Sección titulada «Ejemplo: reaccionar a un reclamo»@EventHandlerpublic void onClaim(PlotClaimEvent event) { getLogger().info(event.getPlayer().getName() + " reclamó la parcela " + event.getPlot());}