Events (for plugin developers)

Events provided

  • SplitXPGiveExperienceEvent (since 1.3a)
    • fired when SplitXP decided that a player will get experience points directly from a living entity without experience orbs getting dropped
    • cancellable
    • methods
      • getters
        • getPlayer() returns the player who will get the experience points (type: Player)
        • getLivingEntity() returns the living entity from which the player will experience points (type: LivingEntity)
        • getExperience() returns the amount of experience points the player will get (type: Integer)
        • isCancelled() returns if this event has been cancelled before or not (type: Boolean)
        • getHandlers() and getHandlerList() return handlers for this event (type: HandlerList)
      • setters
        • setCancelled(Boolean) sets if the event should be cancelled or not
  • SplitXPSplitEvent (since 1.3a)
    • fired when SplitXP decided to split experience points of a (killed) living entity to players
    • cancellable
      • getters
        • getLivingEntity() returns the living entity from which the experience points will be split (type: LivingEntity)
        • getExperience() returns the amount of total experience points the players will get at all (type: Integer)
        • getPlayersExperiencePoints() returns mappings with the player object as key and the amount of experience points as value every player will get or null when no players will get/are there to get the experience points (type: HashMap<Player, Integer>)
        • isCancelled() returns if this event has been cancelled before or not (type: Boolean)
        • getHandlers() and getHandlerList() return handlers for this event (type: HandlerList)
      • setters
        • setCancelled(Boolean) sets if the event should be cancelled or not
  • SplitXPPenalizeEvent
    • cancellable
    • by firing this event from your plugin, you can penalize the player given in the constructor with the settings of SplitXP manually

Sources

These sources can be used by everyone to implement them in own plugins or see how the events of SplitXP are working.

SplitXPGiveExperienceEvent.java

Implemented since 1.3a

package de.gediam.Jakky89.SplitXP;

import org.bukkit.block.Block;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.event.Cancellable;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;

public class SplitXPGiveExperienceEvent extends Event implements Cancellable {

	private static final HandlerList eventHandlers = new HandlerList();
	
	protected boolean eventCancelled;
	private Player eventPlayer;
	private Object eventObject;
	private Integer eventExperience;
	
	public SplitXPGiveExperienceEvent(Player player, Object object, Integer experience) {
		eventCancelled = false;
		eventPlayer = player;
		eventObject = object;
		eventExperience = experience;
	}
	
	public HandlerList getHandlers() {
		return eventHandlers;
	}
	
	public static HandlerList getHandlerList() {
	    return eventHandlers;
	}
	
	public Integer getExperience() {
		return eventExperience;
	}
	
	public LivingEntity getLivingEntity() {
		if (eventObject != null && eventObject instanceof LivingEntity)
			return (LivingEntity)eventObject;
		return null;
	}
	
	public Block getBlock() {
		if (eventObject != null && eventObject instanceof Block)
			return (Block)eventObject;
		return null;
	}
	
	public Boolean willGetFromLivingEntity() {
		return (eventObject != null && eventObject instanceof LivingEntity);
	}
	
	public Boolean willGetFromBlock() {
		return (eventObject != null && eventObject instanceof Block);
	}
	
	public Player getPlayer() {
		return eventPlayer;
	}

	@Override
	public boolean isCancelled() {
		return eventCancelled;
	}

	@Override
	public void setCancelled(boolean cancelled) {
		eventCancelled = cancelled;
	}

}

SplitXPSplitEvent.java

Implemented since 1.3a

package de.gediam.Jakky89.SplitXP;

import java.util.HashMap;

import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.event.Cancellable;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;


public class SplitXPSplitEvent extends Event implements Cancellable {

	private static final HandlerList eventHandlers = new HandlerList();
	
	protected boolean eventCancelled;
	private LivingEntity eventLivingEntity;
	private Integer eventExperience;
	private HashMap<Player, Integer> eventPlayersExperiencePoints;
	
	
	
	public SplitXPSplitEvent(LivingEntity livingEntity, Integer experience, HashMap<Player, Integer> playersExperiencePoints) {
		eventCancelled = false;
		eventLivingEntity = livingEntity;
		eventExperience = experience;
		eventPlayersExperiencePoints = playersExperiencePoints;
	}
	
	public HandlerList getHandlers() {
		return eventHandlers;
	}
	
	public static HandlerList getHandlerList() {
	    return eventHandlers;
	}
	
	public LivingEntity getLivingEntity() {
		return eventLivingEntity;
	}
	
	public Integer getExperience() {
		return eventExperience;
	}
	
	public HashMap<Player, Integer> getPlayersExperiencePoints() {
		return eventPlayersExperiencePoints;
	}

	@Override
	public boolean isCancelled() {
		return eventCancelled;
	}

	@Override
	public void setCancelled(boolean cancelled) {
		eventCancelled = cancelled;
	}

}

SplitXPPenalizeEvent.java

Implemented since 1.6b

package de.gediam.Jakky89.SplitXP;

import org.bukkit.entity.Player;
import org.bukkit.event.Cancellable;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;


public class SplitXPPenalizeEvent extends Event implements Cancellable {

	private static final HandlerList eventHandlers = new HandlerList();
	protected boolean eventCancelled;
	
	private Player eventPlayer;
	
	public SplitXPPenalizeEvent(Player player) {
		eventCancelled = false;
		eventPlayer = player;
	}
	
	public HandlerList getHandlers() {
		return eventHandlers;
	}
	
	public static HandlerList getHandlerList() {
	    return eventHandlers;
	}
	
	public Player getPlayer() {
		return eventPlayer;
	}

	@Override
	public boolean isCancelled() {
		return eventCancelled;
	}

	@Override
	public void setCancelled(boolean cancelled) {
		eventCancelled = cancelled;
	}

}

Comments

Posts Quoted:
Reply
Clear All Quotes