001 package org.bukkit.event.entity; 002 003 import org.bukkit.entity.ThrownExpBottle; 004 import org.bukkit.event.HandlerList; 005 006 /** 007 * Called when a ThrownExpBottle hits and releases experience. 008 */ 009 public class ExpBottleEvent extends ProjectileHitEvent { 010 private static final HandlerList handlers = new HandlerList(); 011 private int exp; 012 private boolean showEffect = true; 013 014 public ExpBottleEvent(final ThrownExpBottle bottle, final int exp) { 015 super(bottle); 016 this.exp = exp; 017 } 018 019 @Override 020 public ThrownExpBottle getEntity() { 021 return (ThrownExpBottle) entity; 022 } 023 024 /** 025 * This method indicates if the particle effect should be shown. 026 * 027 * @return true if the effect will be shown, false otherwise 028 */ 029 public boolean getShowEffect() { 030 return this.showEffect; 031 } 032 033 /** 034 * This method sets if the particle effect will be shown. 035 * <p> 036 * This does not change the experience created. 037 * 038 * @param showEffect true indicates the effect will be shown, false 039 * indicates no effect will be shown 040 */ 041 public void setShowEffect(final boolean showEffect) { 042 this.showEffect = showEffect; 043 } 044 045 /** 046 * This method retrieves the amount of experience to be created. 047 * <p> 048 * The number indicates a total amount to be divided into orbs. 049 * 050 * @return the total amount of experience to be created 051 */ 052 public int getExperience() { 053 return exp; 054 } 055 056 /** 057 * This method sets the amount of experience to be created. 058 * <p> 059 * The number indicates a total amount to be divided into orbs. 060 * 061 * @param exp the total amount of experience to be created 062 */ 063 public void setExperience(final int exp) { 064 this.exp = exp; 065 } 066 067 @Override 068 public HandlerList getHandlers() { 069 return handlers; 070 } 071 072 public static HandlerList getHandlerList() { 073 return handlers; 074 } 075 }