
org.bukkit.event.enchantment.PrepareItemEnchantEvent Maven / Gradle / Ivy
package org.bukkit.event.enchantment;
import org.bukkit.block.Block;
import org.bukkit.entity.Player;
import org.bukkit.event.Cancellable;
import org.bukkit.event.HandlerList;
import org.bukkit.event.inventory.InventoryEvent;
import org.bukkit.inventory.InventoryView;
import org.bukkit.inventory.ItemStack;
/**
* Called when an ItemStack is inserted in an enchantment table - can be
* called multiple times
*/
public class PrepareItemEnchantEvent extends InventoryEvent implements Cancellable {
private static final HandlerList handlers = new HandlerList();
private final Block table;
private final ItemStack item;
private final int[] levelsOffered;
private final int bonus;
private final Player enchanter;
private boolean cancelled;
public PrepareItemEnchantEvent(final Player enchanter, InventoryView view, final Block table, final ItemStack item, final int[] levelsOffered, final int bonus) {
super(view);
this.enchanter = enchanter;
this.table = table;
this.item = item;
this.levelsOffered = levelsOffered;
this.bonus = bonus;
this.cancelled = false;
}
public static HandlerList getHandlerList() {
return handlers;
}
/**
* Gets the player enchanting the item
*
* @return enchanting player
*/
public Player getEnchanter() {
return enchanter;
}
/**
* Gets the block being used to enchant the item
*
* @return the block used for enchanting
*/
public Block getEnchantBlock() {
return table;
}
/**
* Gets the item to be enchanted (can be modified)
*
* @return ItemStack of item
*/
public ItemStack getItem() {
return item;
}
/**
* Get list of offered exp level costs of the enchantment (modify values
* to change offer)
*
* @return experience level costs offered
*/
public int[] getExpLevelCostsOffered() {
return levelsOffered;
}
/**
* Get enchantment bonus in effect - corresponds to number of bookshelves
*
* @return enchantment bonus
*/
public int getEnchantmentBonus() {
return bonus;
}
public boolean isCancelled() {
return cancelled;
}
public void setCancelled(boolean cancel) {
this.cancelled = cancel;
}
@Override
public HandlerList getHandlers() {
return handlers;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy