summaryrefslogtreecommitdiffstats
path: root/src/main
diff options
context:
space:
mode:
authormd_5 <git@md-5.net>2016-03-01 08:30:03 +1100
committermd_5 <git@md-5.net>2016-03-01 08:30:03 +1100
commit7898a2a2d2d81308e73e9ed37725f53d7ad37bfc (patch)
tree6dd32f84e331433ad9b69aaba195189ba64a600e /src/main
parentd5958ff936427a46a833c7ac9354c19ceb371d21 (diff)
downloadbukkit-7898a2a2d2d81308e73e9ed37725f53d7ad37bfc.tar
bukkit-7898a2a2d2d81308e73e9ed37725f53d7ad37bfc.tar.gz
bukkit-7898a2a2d2d81308e73e9ed37725f53d7ad37bfc.tar.lz
bukkit-7898a2a2d2d81308e73e9ed37725f53d7ad37bfc.tar.xz
bukkit-7898a2a2d2d81308e73e9ed37725f53d7ad37bfc.zip
Add definitions for Minecraft 1.9 gameplay elements
Includes an API for AreaEffectCloud and rework of Sound enum to include new sound values.
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/org/bukkit/Material.java64
-rw-r--r--src/main/java/org/bukkit/Server.java16
-rw-r--r--src/main/java/org/bukkit/Sound.java642
-rw-r--r--src/main/java/org/bukkit/Statistic.java8
-rw-r--r--src/main/java/org/bukkit/World.java194
-rw-r--r--src/main/java/org/bukkit/block/Biome.java79
-rw-r--r--src/main/java/org/bukkit/block/EndGateway.java3
-rw-r--r--src/main/java/org/bukkit/block/Structure.java3
-rw-r--r--src/main/java/org/bukkit/entity/AreaEffectCloud.java174
-rw-r--r--src/main/java/org/bukkit/entity/DragonFireball.java3
-rw-r--r--src/main/java/org/bukkit/entity/EntityType.java25
-rw-r--r--src/main/java/org/bukkit/entity/Shulker.java3
-rw-r--r--src/main/java/org/bukkit/entity/ShulkerBullet.java34
-rw-r--r--src/main/java/org/bukkit/entity/SpectralArrow.java3
-rw-r--r--src/main/java/org/bukkit/entity/TippedArrow.java3
-rw-r--r--src/main/java/org/bukkit/entity/Zombie.java17
-rw-r--r--src/main/java/org/bukkit/event/entity/EntityDamageEvent.java6
-rw-r--r--src/main/java/org/bukkit/potion/PotionEffectType.java22
-rw-r--r--src/main/java/org/bukkit/potion/PotionType.java5
19 files changed, 1062 insertions, 242 deletions
diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java
index 0fb26055..41becbe3 100644
--- a/src/main/java/org/bukkit/Material.java
+++ b/src/main/java/org/bukkit/Material.java
@@ -261,6 +261,21 @@ public enum Material {
JUNGLE_DOOR(195, Door.class),
ACACIA_DOOR(196, Door.class),
DARK_OAK_DOOR(197, Door.class),
+ END_ROD(198),
+ CHORUS_PLANT(199),
+ CHORUS_FLOWER(200),
+ PURPUR_BLOCK(201),
+ PURPUR_PILLAR(202),
+ PURPUR_STAIRS(203, Stairs.class),
+ PURPUR_DOUBLE_SLAB(204),
+ PURPUR_SLAB(205),
+ END_BRICKS(206),
+ BEETROOT_BLOCK(207, Crops.class),
+ GRASS_PATH(208),
+ END_GATEWAY(209),
+ COMMAND_REPEATING(210),
+ COMMAND_CHAIN(211),
+ STRUCTURE_BLOCK(255),
// ----- Item Separator -----
IRON_SPADE(256, 1, 250),
IRON_PICKAXE(257, 1, 250),
@@ -438,11 +453,32 @@ public enum Material {
MUTTON(423),
COOKED_MUTTON(424),
BANNER(425, 16),
+ END_CRYSTAL(426),
SPRUCE_DOOR_ITEM(427),
BIRCH_DOOR_ITEM(428),
JUNGLE_DOOR_ITEM(429),
ACACIA_DOOR_ITEM(430),
DARK_OAK_DOOR_ITEM(431),
+ CHORUS_FRUIT(432),
+ CHORUS_FRUIT_POPPED(433),
+ BEETROOT(434),
+ BEETROOT_SEEDS(435),
+ BEETROOT_SOUP(436, 1),
+ DRAGONS_BREATH(437),
+ SPLASH_POTION(438, 1),
+ SPECTRAL_ARROW(439),
+ TIPPED_ARROW(440),
+ /**
+ * @see Potion
+ */
+ LINGERING_POTION(441, 1, MaterialData.class),
+ SHIELD(442, 1),
+ ELYTRA(443, 1),
+ BOAT_SPRUCE(444, 1),
+ BOAT_BIRCH(445, 1),
+ BOAT_JUNGLE(446, 1),
+ BOAT_ACACIA(447, 1),
+ BOAT_DARK_OAK(448, 1),
GOLD_RECORD(2256, 1),
GREEN_RECORD(2257, 1),
RECORD_3(2258, 1),
@@ -605,6 +641,9 @@ public enum Material {
case RABBIT_STEW:
case MUTTON:
case COOKED_MUTTON:
+ case BEETROOT:
+ case CHORUS_FRUIT:
+ case BEETROOT_SOUP:
return true;
default:
return false;
@@ -850,6 +889,16 @@ public enum Material {
case JUNGLE_DOOR:
case ACACIA_DOOR:
case DARK_OAK_DOOR:
+ case PURPUR_BLOCK:
+ case PURPUR_PILLAR:
+ case PURPUR_STAIRS:
+ case PURPUR_DOUBLE_SLAB:
+ case PURPUR_SLAB:
+ case END_BRICKS:
+ case GRASS_PATH:
+ case STRUCTURE_BLOCK:
+ case COMMAND_REPEATING:
+ case COMMAND_CHAIN:
return true;
default:
return false;
@@ -910,6 +959,11 @@ public enum Material {
case ACTIVATOR_RAIL:
case CARPET:
case DOUBLE_PLANT:
+ case END_ROD:
+ case CHORUS_PLANT:
+ case CHORUS_FLOWER:
+ case BEETROOT_BLOCK:
+ case END_GATEWAY:
return true;
default:
return false;
@@ -1032,6 +1086,8 @@ public enum Material {
case JUNGLE_FENCE:
case DARK_OAK_FENCE:
case ACACIA_FENCE:
+ case ACACIA_STAIRS:
+ case DARK_OAK_STAIRS:
return true;
default:
return false;
@@ -1096,7 +1152,6 @@ public enum Material {
case MELON_BLOCK:
case MYCEL:
case NETHER_BRICK:
- case ENDER_PORTAL_FRAME:
case ENDER_STONE:
case REDSTONE_LAMP_OFF:
case REDSTONE_LAMP_ON:
@@ -1118,6 +1173,13 @@ public enum Material {
case PRISMARINE:
case RED_SANDSTONE:
case DOUBLE_STONE_SLAB2:
+ case PURPUR_BLOCK:
+ case PURPUR_PILLAR:
+ case PURPUR_DOUBLE_SLAB:
+ case END_BRICKS:
+ case STRUCTURE_BLOCK:
+ case COMMAND_REPEATING:
+ case COMMAND_CHAIN:
return true;
default:
return false;
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index c2f5de40..60bcec8b 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -13,6 +13,10 @@ import java.util.UUID;
import java.util.logging.Logger;
import org.bukkit.Warning.WarningState;
+import org.bukkit.boss.BarColor;
+import org.bukkit.boss.BarFlag;
+import org.bukkit.boss.BarStyle;
+import org.bukkit.boss.BossBar;
import org.bukkit.command.CommandException;
import org.bukkit.command.CommandSender;
import org.bukkit.command.ConsoleCommandSender;
@@ -927,6 +931,18 @@ public interface Server extends PluginMessageRecipient {
public ChunkGenerator.ChunkData createChunkData(World world);
/**
+ * Creates a boss bar instance to display to players. The progress
+ * defaults to 1.0
+ *
+ * @param title the title of the boss bar
+ * @param color the color of the boss bar
+ * @param style the style of the boss bar
+ * @param flags an optional list of flags to set on the boss bar
+ * @return the created boss bar
+ */
+ BossBar createBossBar(String title, BarColor color, BarStyle style, BarFlag ...flags);
+
+ /**
* @see UnsafeValues
* @return the unsafe values instance
*/
diff --git a/src/main/java/org/bukkit/Sound.java b/src/main/java/org/bukkit/Sound.java
index 09135300..43d81142 100644
--- a/src/main/java/org/bukkit/Sound.java
+++ b/src/main/java/org/bukkit/Sound.java
@@ -9,203 +9,447 @@ package org.bukkit;
* not depend on the ordinal values of this class.
*/
public enum Sound {
- AMBIENCE_CAVE,
- AMBIENCE_RAIN,
- AMBIENCE_THUNDER,
- ANVIL_BREAK,
- ANVIL_LAND,
- ANVIL_USE,
- ARROW_HIT,
- BURP,
- CHEST_CLOSE,
- CHEST_OPEN,
- CLICK,
- DOOR_CLOSE,
- DOOR_OPEN,
- DRINK,
- EAT,
- EXPLODE,
- FALL_BIG,
- FALL_SMALL,
- FIRE,
- FIRE_IGNITE,
- FIZZ,
- FUSE,
- GLASS,
- HURT_FLESH,
- ITEM_BREAK,
- ITEM_PICKUP,
- LAVA,
- LAVA_POP,
- LEVEL_UP,
- MINECART_BASE,
- MINECART_INSIDE,
- NOTE_BASS,
- NOTE_PIANO,
- NOTE_BASS_DRUM,
- NOTE_STICKS,
- NOTE_BASS_GUITAR,
- NOTE_SNARE_DRUM,
- NOTE_PLING,
- ORB_PICKUP,
- PISTON_EXTEND,
- PISTON_RETRACT,
- PORTAL,
- PORTAL_TRAVEL,
- PORTAL_TRIGGER,
- SHOOT_ARROW,
- SPLASH,
- SPLASH2,
- STEP_GRASS,
- STEP_GRAVEL,
- STEP_LADDER,
- STEP_SAND,
- STEP_SNOW,
- STEP_STONE,
- STEP_WOOD,
- STEP_WOOL,
- SWIM,
- WATER,
- WOOD_CLICK,
- // Mob sounds
- BAT_DEATH,
- BAT_HURT,
- BAT_IDLE,
- BAT_LOOP,
- BAT_TAKEOFF,
- BLAZE_BREATH,
- BLAZE_DEATH,
- BLAZE_HIT,
- CAT_HISS,
- CAT_HIT,
- CAT_MEOW,
- CAT_PURR,
- CAT_PURREOW,
- CHICKEN_IDLE,
- CHICKEN_HURT,
- CHICKEN_EGG_POP,
- CHICKEN_WALK,
- COW_IDLE,
- COW_HURT,
- COW_WALK,
- CREEPER_HISS,
- CREEPER_DEATH,
- ENDERDRAGON_DEATH,
- ENDERDRAGON_GROWL,
- ENDERDRAGON_HIT,
- ENDERDRAGON_WINGS,
- ENDERMAN_DEATH,
- ENDERMAN_HIT,
- ENDERMAN_IDLE,
- ENDERMAN_TELEPORT,
- ENDERMAN_SCREAM,
- ENDERMAN_STARE,
- GHAST_SCREAM,
- GHAST_SCREAM2,
- GHAST_CHARGE,
- GHAST_DEATH,
- GHAST_FIREBALL,
- GHAST_MOAN,
- IRONGOLEM_DEATH,
- IRONGOLEM_HIT,
- IRONGOLEM_THROW,
- IRONGOLEM_WALK,
- MAGMACUBE_WALK,
- MAGMACUBE_WALK2,
- MAGMACUBE_JUMP,
- PIG_IDLE,
- PIG_DEATH,
- PIG_WALK,
- SHEEP_IDLE,
- SHEEP_SHEAR,
- SHEEP_WALK,
- SILVERFISH_HIT,
- SILVERFISH_KILL,
- SILVERFISH_IDLE,
- SILVERFISH_WALK,
- SKELETON_IDLE,
- SKELETON_DEATH,
- SKELETON_HURT,
- SKELETON_WALK,
- SLIME_ATTACK,
- SLIME_WALK,
- SLIME_WALK2,
- SPIDER_IDLE,
- SPIDER_DEATH,
- SPIDER_WALK,
- WITHER_DEATH,
- WITHER_HURT,
- WITHER_IDLE,
- WITHER_SHOOT,
- WITHER_SPAWN,
- WOLF_BARK,
- WOLF_DEATH,
- WOLF_GROWL,
- WOLF_HOWL,
- WOLF_HURT,
- WOLF_PANT,
- WOLF_SHAKE,
- WOLF_WALK,
- WOLF_WHINE,
- ZOMBIE_METAL,
- ZOMBIE_WOOD,
- ZOMBIE_WOODBREAK,
- ZOMBIE_IDLE,
- ZOMBIE_DEATH,
- ZOMBIE_HURT,
- ZOMBIE_INFECT,
- ZOMBIE_UNFECT,
- ZOMBIE_REMEDY,
- ZOMBIE_WALK,
- ZOMBIE_PIG_IDLE,
- ZOMBIE_PIG_ANGRY,
- ZOMBIE_PIG_DEATH,
- ZOMBIE_PIG_HURT,
- // Dig Sounds
- DIG_WOOL,
- DIG_GRASS,
- DIG_GRAVEL,
- DIG_SAND,
- DIG_SNOW,
- DIG_STONE,
- DIG_WOOD,
- // Fireworks
- FIREWORK_BLAST,
- FIREWORK_BLAST2,
- FIREWORK_LARGE_BLAST,
- FIREWORK_LARGE_BLAST2,
- FIREWORK_TWINKLE,
- FIREWORK_TWINKLE2,
- FIREWORK_LAUNCH,
- SUCCESSFUL_HIT,
- // Horses
- HORSE_ANGRY,
- HORSE_ARMOR,
- HORSE_BREATHE,
- HORSE_DEATH,
- HORSE_GALLOP,
- HORSE_HIT,
- HORSE_IDLE,
- HORSE_JUMP,
- HORSE_LAND,
- HORSE_SADDLE,
- HORSE_SOFT,
- HORSE_WOOD,
- DONKEY_ANGRY,
- DONKEY_DEATH,
- DONKEY_HIT,
- DONKEY_IDLE,
- HORSE_SKELETON_DEATH,
- HORSE_SKELETON_HIT,
- HORSE_SKELETON_IDLE,
- HORSE_ZOMBIE_DEATH,
- HORSE_ZOMBIE_HIT,
- HORSE_ZOMBIE_IDLE,
- // Villager
- VILLAGER_DEATH,
- VILLAGER_HAGGLE,
- VILLAGER_HIT,
- VILLAGER_IDLE,
- VILLAGER_NO,
- VILLAGER_YES,
+ AMBIENT_CAVE,
+ BLOCK_ANVIL_BREAK,
+ BLOCK_ANVIL_DESTROY,
+ BLOCK_ANVIL_FALL,
+ BLOCK_ANVIL_HIT,
+ BLOCK_ANVIL_LAND,
+ BLOCK_ANVIL_PLACE,
+ BLOCK_ANVIL_STEP,
+ BLOCK_ANVIL_USE,
+ BLOCK_BREWING_STAND_BREW,
+ BLOCK_CHEST_CLOSE,
+ BLOCK_CHEST_LOCKED,
+ BLOCK_CHEST_OPEN,
+ BLOCK_CHORUS_FLOWER_DEATH,
+ BLOCK_CHORUS_FLOWER_GROW,
+ BLOCK_CLOTH_BREAK,
+ BLOCK_CLOTH_FALL,
+ BLOCK_CLOTH_HIT,
+ BLOCK_CLOTH_PLACE,
+ BLOCK_CLOTH_STEP,
+ BLOCK_COMPARATOR_CLICK,
+ BLOCK_DISPENSER_DISPENSE,
+ BLOCK_DISPENSER_FAIL,
+ BLOCK_DISPENSER_LAUNCH,
+ BLOCK_ENDERCHEST_CLOSE,
+ BLOCK_ENDERCHEST_OPEN,
+ BLOCK_END_GATEWAY_SPAWN,
+ BLOCK_FENCE_GATE_CLOSE,
+ BLOCK_FENCE_GATE_OPEN,
+ BLOCK_FIRE_AMBIENT,
+ BLOCK_FIRE_EXTINGUISH,
+ BLOCK_FURNACE_FIRE_CRACKLE,
+ BLOCK_GLASS_BREAK,
+ BLOCK_GLASS_FALL,
+ BLOCK_GLASS_HIT,
+ BLOCK_GLASS_PLACE,
+ BLOCK_GLASS_STEP,
+ BLOCK_GRASS_BREAK,
+ BLOCK_GRASS_FALL,
+ BLOCK_GRASS_HIT,
+ BLOCK_GRASS_PLACE,
+ BLOCK_GRASS_STEP,
+ BLOCK_GRAVEL_BREAK,
+ BLOCK_GRAVEL_FALL,
+ BLOCK_GRAVEL_HIT,
+ BLOCK_GRAVEL_PLACE,
+ BLOCK_GRAVEL_STEP,
+ BLOCK_IRON_DOOR_CLOSE,
+ BLOCK_IRON_DOOR_OPEN,
+ BLOCK_IRON_TRAPDOOR_CLOSE,
+ BLOCK_IRON_TRAPDOOR_OPEN,
+ BLOCK_LADDER_BREAK,
+ BLOCK_LADDER_FALL,
+ BLOCK_LADDER_HIT,
+ BLOCK_LADDER_PLACE,
+ BLOCK_LADDER_STEP,
+ BLOCK_LAVA_AMBIENT,
+ BLOCK_LAVA_EXTINGUISH,
+ BLOCK_LAVA_POP,
+ BLOCK_LEVER_CLICK,
+ BLOCK_METAL_BREAK,
+ BLOCK_METAL_FALL,
+ BLOCK_METAL_HIT,
+ BLOCK_METAL_PLACE,
+ BLOCK_METAL_PRESSUREPLATE_CLICK_OFF,
+ BLOCK_METAL_PRESSUREPLATE_CLICK_ON,
+ BLOCK_METAL_STEP,
+ BLOCK_NOTE_BASEDRUM,
+ BLOCK_NOTE_BASS,
+ BLOCK_NOTE_HARP,
+ BLOCK_NOTE_HAT,
+ BLOCK_NOTE_PLING,
+ BLOCK_NOTE_SNARE,
+ BLOCK_PISTON_CONTRACT,
+ BLOCK_PISTON_EXTEND,
+ BLOCK_PORTAL_AMBIENT,
+ BLOCK_PORTAL_TRAVEL,
+ BLOCK_PORTAL_TRIGGER,
+ BLOCK_REDSTONE_TORCH_BURNOUT,
+ BLOCK_SAND_BREAK,
+ BLOCK_SAND_FALL,
+ BLOCK_SAND_HIT,
+ BLOCK_SAND_PLACE,
+ BLOCK_SAND_STEP,
+ BLOCK_SLIME_BREAK,
+ BLOCK_SLIME_FALL,
+ BLOCK_SLIME_HIT,
+ BLOCK_SLIME_PLACE,
+ BLOCK_SLIME_STEP,
+ BLOCK_SNOW_BREAK,
+ BLOCK_SNOW_FALL,
+ BLOCK_SNOW_HIT,
+ BLOCK_SNOW_PLACE,
+ BLOCK_SNOW_STEP,
+ BLOCK_STONE_BREAK,
+ BLOCK_STONE_BUTTON_CLICK_OFF,
+ BLOCK_STONE_BUTTON_CLICK_ON,
+ BLOCK_STONE_FALL,
+ BLOCK_STONE_HIT,
+ BLOCK_STONE_PLACE,
+ BLOCK_STONE_PRESSUREPLATE_CLICK_OFF,
+ BLOCK_STONE_PRESSUREPLATE_CLICK_ON,
+ BLOCK_STONE_STEP,
+ BLOCK_TRIPWIRE_ATTACH,
+ BLOCK_TRIPWIRE_CLICK_OFF,
+ BLOCK_TRIPWIRE_CLICK_ON,
+ BLOCK_TRIPWIRE_DETACH,
+ BLOCK_WATERLILY_PLACE,
+ BLOCK_WATER_AMBIENT,
+ BLOCK_WOODEN_DOOR_CLOSE,
+ BLOCK_WOODEN_DOOR_OPEN,
+ BLOCK_WOODEN_TRAPDOOR_CLOSE,
+ BLOCK_WOODEN_TRAPDOOR_OPEN,
+ BLOCK_WOOD_BREAK,
+ BLOCK_WOOD_BUTTON_CLICK_OFF,
+ BLOCK_WOOD_BUTTON_CLICK_ON,
+ BLOCK_WOOD_FALL,
+ BLOCK_WOOD_HIT,
+ BLOCK_WOOD_PLACE,
+ BLOCK_WOOD_PRESSUREPLATE_CLICK_OFF,
+ BLOCK_WOOD_PRESSUREPLATE_CLICK_ON,
+ BLOCK_WOOD_STEP,
+ ENCHANT_THORNS_HIT,
+ ENTITY_ARMORSTAND_BREAK,
+ ENTITY_ARMORSTAND_FALL,
+ ENTITY_ARMORSTAND_HIT,
+ ENTITY_ARMORSTAND_PLACE,
+ ENTITY_ARROW_HIT,
+ ENTITY_ARROW_HIT_PLAYER,
+ ENTITY_ARROW_SHOOT,
+ ENTITY_BAT_AMBIENT,
+ ENTITY_BAT_DEATH,
+ ENTITY_BAT_HURT,
+ ENTITY_BAT_LOOP,
+ ENTITY_BAT_TAKEOFF,
+ ENTITY_BLAZE_AMBIENT,
+ ENTITY_BLAZE_BURN,
+ ENTITY_BLAZE_DEATH,
+ ENTITY_BLAZE_HURT,
+ ENTITY_BLAZE_SHOOT,
+ ENTITY_BOBBER_SPLASH,
+ ENTITY_BOBBER_THROW,
+ ENTITY_CAT_AMBIENT,
+ ENTITY_CAT_DEATH,
+ ENTITY_CAT_HISS,
+ ENTITY_CAT_HURT,
+ ENTITY_CAT_PURR,
+ ENTITY_CAT_PURREOW,
+ ENTITY_CHICKEN_AMBIENT,
+ ENTITY_CHICKEN_DEATH,
+ ENTITY_CHICKEN_EGG,
+ ENTITY_CHICKEN_HURT,
+ ENTITY_CHICKEN_STEP,
+ ENTITY_COW_AMBIENT,
+ ENTITY_COW_DEATH,
+ ENTITY_COW_HURT,
+ ENTITY_COW_MILK,
+ ENTITY_COW_STEP,
+ ENTITY_CREEPER_DEATH,
+ ENTITY_CREEPER_HURT,
+ ENTITY_CREEPER_PRIMED,
+ ENTITY_DONKEY_AMBIENT,
+ ENTITY_DONKEY_ANGRY,
+ ENTITY_DONKEY_CHEST,
+ ENTITY_DONKEY_DEATH,
+ ENTITY_DONKEY_HURT,
+ ENTITY_EGG_THROW,
+ ENTITY_ELDER_GUARDIAN_AMBIENT,
+ ENTITY_ELDER_GUARDIAN_AMBIENT_LAND,
+ ENTITY_ELDER_GUARDIAN_CURSE,
+ ENTITY_ELDER_GUARDIAN_DEATH,
+ ENTITY_ELDER_GUARDIAN_DEATH_LAND,
+ ENTITY_ELDER_GUARDIAN_HURT,
+ ENTITY_ELDER_GUARDIAN_HURT_LAND,
+ ENTITY_ENDERDRAGON_AMBIENT,
+ ENTITY_ENDERDRAGON_DEATH,
+ ENTITY_ENDERDRAGON_FIREBALL_EXPLODE,
+ ENTITY_ENDERDRAGON_FLAP,
+ ENTITY_ENDERDRAGON_GROWL,
+ ENTITY_ENDERDRAGON_HURT,
+ ENTITY_ENDERDRAGON_SHOOT,
+ ENTITY_ENDEREYE_LAUNCH,
+ ENTITY_ENDERMEN_AMBIENT,
+ ENTITY_ENDERMEN_DEATH,
+ ENTITY_ENDERMEN_HURT,
+ ENTITY_ENDERMEN_SCREAM,
+ ENTITY_ENDERMEN_STARE,
+ ENTITY_ENDERMEN_TELEPORT,
+ ENTITY_ENDERMITE_AMBIENT,
+ ENTITY_ENDERMITE_DEATH,
+ ENTITY_ENDERMITE_HURT,
+ ENTITY_ENDERMITE_STEP,
+ ENTITY_ENDERPEARL_THROW,
+ ENTITY_EXPERIENCE_BOTTLE_THROW,
+ ENTITY_EXPERIENCE_ORB_PICKUP,
+ ENTITY_EXPERIENCE_ORB_TOUCH,
+ ENTITY_FIREWORK_BLAST,
+ ENTITY_FIREWORK_BLAST_FAR,
+ ENTITY_FIREWORK_LARGE_BLAST,
+ ENTITY_FIREWORK_LARGE_BLAST_FAR,
+ ENTITY_FIREWORK_LAUNCH,
+ ENTITY_FIREWORK_SHOOT,
+ ENTITY_FIREWORK_TWINKLE,
+ ENTITY_FIREWORK_TWINKLE_FAR,
+ ENTITY_GENERIC_BIG_FALL,
+ ENTITY_GENERIC_BURN,
+ ENTITY_GENERIC_DEATH,
+ ENTITY_GENERIC_DRINK,
+ ENTITY_GENERIC_EAT,
+ ENTITY_GENERIC_EXPLODE,
+ ENTITY_GENERIC_EXTINGUISH_FIRE,
+ ENTITY_GENERIC_HURT,
+ ENTITY_GENERIC_SMALL_FALL,
+ ENTITY_GENERIC_SPLASH,
+ ENTITY_GENERIC_SWIM,
+ ENTITY_GHAST_AMBIENT,
+ ENTITY_GHAST_DEATH,
+ ENTITY_GHAST_HURT,
+ ENTITY_GHAST_SCREAM,
+ ENTITY_GHAST_SHOOT,
+ ENTITY_GHAST_WARN,
+ ENTITY_GUARDIAN_AMBIENT,
+ ENTITY_GUARDIAN_AMBIENT_LAND,
+ ENTITY_GUARDIAN_ATTACK,
+ ENTITY_GUARDIAN_DEATH,
+ ENTITY_GUARDIAN_DEATH_LAND,
+ ENTITY_GUARDIAN_FLOP,
+ ENTITY_GUARDIAN_HURT,
+ ENTITY_GUARDIAN_HURT_LAND,
+ ENTITY_HORSE_AMBIENT,
+ ENTITY_HORSE_ANGRY,
+ ENTITY_HORSE_ARMOR,
+ ENTITY_HORSE_BREATHE,
+ ENTITY_HORSE_DEATH,
+ ENTITY_HORSE_EAT,
+ ENTITY_HORSE_GALLOP,
+ ENTITY_HORSE_HURT,
+ ENTITY_HORSE_JUMP,
+ ENTITY_HORSE_LAND,
+ ENTITY_HORSE_SADDLE,
+ ENTITY_HORSE_STEP,
+ ENTITY_HORSE_STEP_WOOD,
+ ENTITY_HOSTILE_BIG_FALL,
+ ENTITY_HOSTILE_DEATH,
+ ENTITY_HOSTILE_HURT,
+ ENTITY_HOSTILE_SMALL_FALL,
+ ENTITY_HOSTILE_SPLASH,
+ ENTITY_HOSTILE_SWIM,
+ ENTITY_IRONGOLEM_ATTACK,
+ ENTITY_IRONGOLEM_DEATH,
+ ENTITY_IRONGOLEM_HURT,
+ ENTITY_IRONGOLEM_STEP,
+ ENTITY_ITEMFRAME_ADD_ITEM,
+ ENTITY_ITEMFRAME_BREAK,
+ ENTITY_ITEMFRAME_PLACE,
+ ENTITY_ITEMFRAME_REMOVE_ITEM,
+ ENTITY_ITEMFRAME_ROTATE_ITEM,
+ ENTITY_ITEM_BREAK,
+ ENTITY_ITEM_PICKUP,
+ ENTITY_LEASHKNOT_BREAK,
+ ENTITY_LEASHKNOT_PLACE,
+ ENTITY_LIGHTNING_IMPACT,
+ ENTITY_LIGHTNING_THUNDER,
+ ENTITY_LINGERINGPOTION_THROW,
+ ENTITY_MAGMACUBE_DEATH,
+ ENTITY_MAGMACUBE_HURT,
+ ENTITY_MAGMACUBE_JUMP,
+ ENTITY_MAGMACUBE_SQUISH,
+ ENTITY_MINECART_INSIDE,
+ ENTITY_MINECART_RIDING,
+ ENTITY_MOOSHROOM_SHEAR,
+ ENTITY_MULE_AMBIENT,
+ ENTITY_MULE_DEATH,
+ ENTITY_MULE_HURT,
+ ENTITY_PAINTING_BREAK,
+ ENTITY_PAINTING_PLACE,
+ ENTITY_PIG_AMBIENT,
+ ENTITY_PIG_DEATH,
+ ENTITY_PIG_HURT,
+ ENTITY_PIG_SADDLE,
+ ENTITY_PIG_STEP,
+ ENTITY_PLAYER_ATTACK_CRIT,
+ ENTITY_PLAYER_ATTACK_KNOCKBACK,
+ ENTITY_PLAYER_ATTACK_NODAMAGE,
+ ENTITY_PLAYER_ATTACK_STRONG,
+ ENTITY_PLAYER_ATTACK_SWEEP,
+ ENTITY_PLAYER_ATTACK_WEAK,
+ ENTITY_PLAYER_BIG_FALL,
+ ENTITY_PLAYER_BREATH,
+ ENTITY_PLAYER_BURP,
+ ENTITY_PLAYER_DEATH,
+ ENTITY_PLAYER_HURT,
+ ENTITY_PLAYER_LEVELUP,
+ ENTITY_PLAYER_SMALL_FALL,
+ ENTITY_PLAYER_SPLASH,
+ ENTITY_PLAYER_SWIM,
+ ENTITY_RABBIT_AMBIENT,
+ ENTITY_RABBIT_ATTACK,
+ ENTITY_RABBIT_DEATH,
+ ENTITY_RABBIT_HURT,
+ ENTITY_RABBIT_JUMP,
+ ENTITY_SHEEP_AMBIENT,
+ ENTITY_SHEEP_DEATH,
+ ENTITY_SHEEP_HURT,
+ ENTITY_SHEEP_SHEAR,
+ ENTITY_SHEEP_STEP,
+ ENTITY_SHULKER_AMBIENT,
+ ENTITY_SHULKER_BULLET_HIT,
+ ENTITY_SHULKER_BULLET_HURT,
+ ENTITY_SHULKER_CLOSE,
+ ENTITY_SHULKER_DEATH,
+ ENTITY_SHULKER_HURT,
+ ENTITY_SHULKER_HURT_CLOSED,
+ ENTITY_SHULKER_OPEN,
+ ENTITY_SHULKER_SHOOT,
+ ENTITY_SHULKER_TELEPORT,
+ ENTITY_SILVERFISH_AMBIENT,
+ ENTITY_SILVERFISH_DEATH,
+ ENTITY_SILVERFISH_HURT,
+ ENTITY_SILVERFISH_STEP,
+ ENTITY_SKELETON_AMBIENT,
+ ENTITY_SKELETON_DEATH,
+ ENTITY_SKELETON_HORSE_AMBIENT,
+ ENTITY_SKELETON_HORSE_DEATH,
+ ENTITY_SKELETON_HORSE_HURT,
+ ENTITY_SKELETON_HURT,
+ ENTITY_SKELETON_SHOOT,
+ ENTITY_SKELETON_STEP,
+ ENTITY_SLIME_ATTACK,
+ ENTITY_SLIME_DEATH,
+ ENTITY_SLIME_HURT,
+ ENTITY_SLIME_JUMP,
+ ENTITY_SLIME_SQUISH,
+ ENTITY_SMALL_MAGMACUBE_DEATH,
+ ENTITY_SMALL_MAGMACUBE_HURT,
+ ENTITY_SMALL_MAGMACUBE_SQUISH,
+ ENTITY_SMALL_SLIME_DEATH,
+ ENTITY_SMALL_SLIME_HURT,
+ ENTITY_SMALL_SLIME_JUMP,
+ ENTITY_SMALL_SLIME_SQUISH,
+ ENTITY_SNOWBALL_THROW,
+ ENTITY_SNOWMAN_AMBIENT,
+ ENTITY_SNOWMAN_DEATH,
+ ENTITY_SNOWMAN_HURT,
+ ENTITY_SNOWMAN_SHOOT,
+ ENTITY_SPIDER_AMBIENT,
+ ENTITY_SPIDER_DEATH,
+ ENTITY_SPIDER_HURT,
+ ENTITY_SPIDER_STEP,
+ ENTITY_SPLASH_POTION_BREAK,
+ ENTITY_SPLASH_POTION_THROW,
+ ENTITY_SQUID_AMBIENT,
+ ENTITY_SQUID_DEATH,
+ ENTITY_SQUID_HURT,
+ ENTITY_TNT_PRIMED,
+ ENTITY_VILLAGER_AMBIENT,
+ ENTITY_VILLAGER_DEATH,
+ ENTITY_VILLAGER_HURT,
+ ENTITY_VILLAGER_NO,
+ ENTITY_VILLAGER_TRADING,
+ ENTITY_VILLAGER_YES,
+ ENTITY_WITCH_AMBIENT,
+ ENTITY_WITCH_DEATH,
+ ENTITY_WITCH_DRINK,
+ ENTITY_WITCH_HURT,
+ ENTITY_WITCH_THROW,
+ ENTITY_WITHER_AMBIENT,
+ ENTITY_WITHER_BREAK_BLOCK,
+ ENTITY_WITHER_DEATH,
+ ENTITY_WITHER_HURT,
+ ENTITY_WITHER_SHOOT,
+ ENTITY_WITHER_SPAWN,
+ ENTITY_WOLF_AMBIENT,
+ ENTITY_WOLF_DEATH,
+ ENTITY_WOLF_GROWL,
+ ENTITY_WOLF_HOWL,
+ ENTITY_WOLF_HURT,
+ ENTITY_WOLF_PANT,
+ ENTITY_WOLF_SHAKE,
+ ENTITY_WOLF_STEP,
+ ENTITY_WOLF_WHINE,
+ ENTITY_ZOMBIE_AMBIENT,
+ ENTITY_ZOMBIE_ATTACK_DOOR_WOOD,
+ ENTITY_ZOMBIE_ATTACK_IRON_DOOR,
+ ENTITY_ZOMBIE_BREAK_DOOR_WOOD,
+ ENTITY_ZOMBIE_DEATH,
+ ENTITY_ZOMBIE_HORSE_AMBIENT,
+ ENTITY_ZOMBIE_HORSE_DEATH,
+ ENTITY_ZOMBIE_HORSE_HURT,
+ ENTITY_ZOMBIE_HURT,
+ ENTITY_ZOMBIE_INFECT,
+ ENTITY_ZOMBIE_PIG_AMBIENT,
+ ENTITY_ZOMBIE_PIG_ANGRY,
+ ENTITY_ZOMBIE_PIG_DEATH,
+ ENTITY_ZOMBIE_PIG_HURT,
+ ENTITY_ZOMBIE_STEP,
+ ENTITY_ZOMBIE_VILLAGER_AMBIENT,
+ ENTITY_ZOMBIE_VILLAGER_CONVERTED,
+ ENTITY_ZOMBIE_VILLAGER_CURE,
+ ENTITY_ZOMBIE_VILLAGER_DEATH,
+ ENTITY_ZOMBIE_VILLAGER_HURT,
+ ENTITY_ZOMBIE_VILLAGER_STEP,
+ ITEM_ARMOR_EQUIP_CHAIN,
+ ITEM_ARMOR_EQUIP_DIAMOND,
+ ITEM_ARMOR_EQUIP_GENERIC,
+ ITEM_ARMOR_EQUIP_GOLD,
+ ITEM_ARMOR_EQUIP_IRON,
+ ITEM_ARMOR_EQUIP_LEATHER,
+ ITEM_BOTTLE_FILL,
+ ITEM_BOTTLE_FILL_DRAGONBREATH,
+ ITEM_BUCKET_EMPTY,
+ ITEM_BUCKET_EMPTY_LAVA,
+ ITEM_BUCKET_FILL,
+ ITEM_BUCKET_FILL_LAVA,
+ ITEM_CHORUS_FRUIT_TELEPORT,
+ ITEM_FIRECHARGE_USE,
+ ITEM_FLINTANDSTEEL_USE,
+ ITEM_HOE_TILL,
+ ITEM_SHIELD_BLOCK,
+ ITEM_SHIELD_BREAK,
+ ITEM_SHOVEL_FLATTEN,
+ MUSIC_CREATIVE,
+ MUSIC_CREDITS,
+ MUSIC_DRAGON,
+ MUSIC_END,
+ MUSIC_GAME,
+ MUSIC_MENU,
+ MUSIC_NETHER,
+ RECORD_11,
+ RECORD_13,
+ RECORD_BLOCKS,
+ RECORD_CAT,
+ RECORD_CHIRP,
+ RECORD_FAR,
+ RECORD_MALL,
+ RECORD_MELLOHI,
+ RECORD_STAL,
+ RECORD_STRAD,
+ RECORD_WAIT,
+ RECORD_WARD,
+ UI_BUTTON_CLICK,
+ WEATHER_RAIN,
+ WEATHER_RAIN_ABOVE,
}
diff --git a/src/main/java/org/bukkit/Statistic.java b/src/main/java/org/bukkit/Statistic.java
index 3764f1f5..3f0ec9f5 100644
--- a/src/main/java/org/bukkit/Statistic.java
+++ b/src/main/java/org/bukkit/Statistic.java
@@ -15,11 +15,13 @@ public enum Statistic {
JUNK_FISHED,
LEAVE_GAME,
JUMP,
- DROP,
+ DROP(Type.ITEM),
+ PICKUP(Type.ITEM),
PLAY_ONE_TICK,
WALK_ONE_CM,
SWIM_ONE_CM,
FALL_ONE_CM,
+ SNEAK_TIME,
CLIMB_ONE_CM,
FLY_ONE_CM,
DIVE_ONE_CM,
@@ -29,6 +31,7 @@ public enum Statistic {
HORSE_ONE_CM,
SPRINT_ONE_CM,
CROUCH_ONE_CM,
+ AVIATE_ONE_CM,
MINE_BLOCK(Type.BLOCK),
USE_ITEM(Type.ITEM),
BREAK_ITEM(Type.ITEM),
@@ -57,7 +60,8 @@ public enum Statistic {
RECORD_PLAYED,
FURNACE_INTERACTION,
CRAFTING_TABLE_INTERACTION,
- CHEST_OPENED;
+ CHEST_OPENED,
+ SLEEP_IN_BED;
private final Type type;
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
index 6eb1c0fe..5cc1feca 100644
--- a/src/main/java/org/bukkit/World.java
+++ b/src/main/java/org/bukkit/World.java
@@ -1167,6 +1167,200 @@ public interface World extends PluginMessageRecipient, Metadatable {
public WorldBorder getWorldBorder();
/**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location.
+ *
+ * @param particle the particle to spawn
+ * @param location the location to spawn at
+ * @param count the number of particles
+ */
+ public void spawnParticle(Particle particle, Location location, int count);
+
+ /**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location.
+ *
+ * @param particle the particle to spawn
+ * @param x the position on the x axis to spawn at
+ * @param y the position on the y axis to spawn at
+ * @param z the position on the z axis to spawn at
+ * @param count the number of particles
+ */
+ public void spawnParticle(Particle particle, double x, double y, double z, int count);
+
+ /**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location.
+ *
+ * @param particle the particle to spawn
+ * @param location the location to spawn at
+ * @param count the number of particles
+ * @param data the data to use for the particle or null,
+ * the type of this depends on {@link Particle#getDataType()}
+ */
+ public <T> void spawnParticle(Particle particle, Location location, int count, T data);
+
+
+ /**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location.
+ *
+ * @param particle the particle to spawn
+ * @param x the position on the x axis to spawn at
+ * @param y the position on the y axis to spawn at
+ * @param z the position on the z axis to spawn at
+ * @param count the number of particles
+ * @param data the data to use for the particle or null,
+ * the type of this depends on {@link Particle#getDataType()}
+ */
+ public <T> void spawnParticle(Particle particle, double x, double y, double z, int count, T data);
+
+ /**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location. The position of each particle will be
+ * randomized positively and negatively by the offset parameters
+ * on each axis.
+ *
+ * @param particle the particle to spawn
+ * @param location the location to spawn at
+ * @param count the number of particles
+ * @param offsetX the maximum random offset on the X axis
+ * @param offsetY the maximum random offset on the Y axis
+ * @param offsetZ the maximum random offset on the Z axis
+ */
+ public void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, double offsetZ);
+
+ /**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location. The position of each particle will be
+ * randomized positively and negatively by the offset parameters
+ * on each axis.
+ *
+ * @param particle the particle to spawn
+ * @param x the position on the x axis to spawn at
+ * @param y the position on the y axis to spawn at
+ * @param z the position on the z axis to spawn at
+ * @param count the number of particles
+ * @param offsetX the maximum random offset on the X axis
+ * @param offsetY the maximum random offset on the Y axis
+ * @param offsetZ the maximum random offset on the Z axis
+ */
+ public void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ);
+
+ /**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location. The position of each particle will be
+ * randomized positively and negatively by the offset parameters
+ * on each axis.
+ *
+ * @param particle the particle to spawn
+ * @param location the location to spawn at
+ * @param count the number of particles
+ * @param offsetX the maximum random offset on the X axis
+ * @param offsetY the maximum random offset on the Y axis
+ * @param offsetZ the maximum random offset on the Z axis
+ * @param data the data to use for the particle or null,
+ * the type of this depends on {@link Particle#getDataType()}
+ */
+ public <T> void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, double offsetZ, T data);
+
+ /**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location. The position of each particle will be
+ * randomized positively and negatively by the offset parameters
+ * on each axis.
+ *
+ * @param particle the particle to spawn
+ * @param x the position on the x axis to spawn at
+ * @param y the position on the y axis to spawn at
+ * @param z the position on the z axis to spawn at
+ * @param count the number of particles
+ * @param offsetX the maximum random offset on the X axis
+ * @param offsetY the maximum random offset on the Y axis
+ * @param offsetZ the maximum random offset on the Z axis
+ * @param data the data to use for the particle or null,
+ * the type of this depends on {@link Particle#getDataType()}
+ */
+ public <T> void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, T data);
+
+ /**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location. The position of each particle will be
+ * randomized positively and negatively by the offset parameters
+ * on each axis.
+ *
+ * @param particle the particle to spawn
+ * @param location the location to spawn at
+ * @param count the number of particles
+ * @param offsetX the maximum random offset on the X axis
+ * @param offsetY the maximum random offset on the Y axis
+ * @param offsetZ the maximum random offset on the Z axis
+ * @param extra the extra data for this particle, depends on the
+ * particle used (normally speed)
+ */
+ public void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, double offsetZ, double extra);
+
+ /**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location. The position of each particle will be
+ * randomized positively and negatively by the offset parameters
+ * on each axis.
+ *
+ * @param particle the particle to spawn
+ * @param x the position on the x axis to spawn at
+ * @param y the position on the y axis to spawn at
+ * @param z the position on the z axis to spawn at
+ * @param count the number of particles
+ * @param offsetX the maximum random offset on the X axis
+ * @param offsetY the maximum random offset on the Y axis
+ * @param offsetZ the maximum random offset on the Z axis
+ * @param extra the extra data for this particle, depends on the
+ * particle used (normally speed)
+ */
+ public void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra);
+
+ /**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location. The position of each particle will be
+ * randomized positively and negatively by the offset parameters
+ * on each axis.
+ *
+ * @param particle the particle to spawn
+ * @param location the location to spawn at
+ * @param count the number of particles
+ * @param offsetX the maximum random offset on the X axis
+ * @param offsetY the maximum random offset on the Y axis
+ * @param offsetZ the maximum random offset on the Z axis
+ * @param extra the extra data for this particle, depends on the
+ * particle used (normally speed)
+ * @param data the data to use for the particle or null,
+ * the type of this depends on {@link Particle#getDataType()}
+ */
+ public <T> void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, double offsetZ, double extra, T data);
+
+ /**
+ * Spawns the particle (the number of times specified by count)
+ * at the target location. The position of each particle will be
+ * randomized positively and negatively by the offset parameters
+ * on each axis.
+ *
+ * @param particle the particle to spawn
+ * @param x the position on the x axis to spawn at
+ * @param y the position on the y axis to spawn at
+ * @param z the position on the z axis to spawn at
+ * @param count the number of particles
+ * @param offsetX the maximum random offset on the X axis
+ * @param offsetY the maximum random offset on the Y axis
+ * @param offsetZ the maximum random offset on the Z axis
+ * @param extra the extra data for this particle, depends on the
+ * particle used (normally speed)
+ * @param data the data to use for the particle or null,
+ * the type of this depends on {@link Particle#getDataType()}
+ */
+ public <T> void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra, T data);
+
+
+ /**
* Represents various map environment types that a world may be
*/
public enum Environment {
diff --git a/src/main/java/org/bukkit/block/Biome.java b/src/main/java/org/bukkit/block/Biome.java
index 8b902f44..9585005f 100644
--- a/src/main/java/org/bukkit/block/Biome.java
+++ b/src/main/java/org/bukkit/block/Biome.java
@@ -4,27 +4,27 @@ package org.bukkit.block;
* Holds all accepted Biomes in the default server
*/
public enum Biome {
- SWAMPLAND,
+ OCEAN,
+ PLAINS,
+ DESERT,
+ EXTREME_HILLS,
FOREST,
TAIGA,
- DESERT,
- PLAINS,
+ SWAMPLAND,
+ RIVER,
HELL,
SKY,
- OCEAN,
- RIVER,
- EXTREME_HILLS,
FROZEN_OCEAN,
FROZEN_RIVER,
- ICE_PLAINS,
+ ICE_FLATS,
ICE_MOUNTAINS,
MUSHROOM_ISLAND,
- MUSHROOM_SHORE,
- BEACH,
+ MUSHROOM_ISLAND_SHORE,
+ BEACHES,
DESERT_HILLS,
FOREST_HILLS,
TAIGA_HILLS,
- SMALL_MOUNTAINS,
+ SMALLER_EXTREME_HILLS,
JUNGLE,
JUNGLE_HILLS,
JUNGLE_EDGE,
@@ -34,35 +34,36 @@ public enum Biome {
BIRCH_FOREST,
BIRCH_FOREST_HILLS,
ROOFED_FOREST,
- COLD_TAIGA,
- COLD_TAIGA_HILLS,
- MEGA_TAIGA,
- MEGA_TAIGA_HILLS,
- EXTREME_HILLS_PLUS,
+ TAIGA_COLD,
+ TAIGA_COLD_HILLS,
+ REDWOOD_TAIGA,
+ REDWOOD_TAIGA_HILLS,
+ EXTREME_HILLS_WITH_TREES,
SAVANNA,
- SAVANNA_PLATEAU,
+ SAVANNA_ROCK,
MESA,
- MESA_PLATEAU_FOREST,
- MESA_PLATEAU,
- SUNFLOWER_PLAINS,
- DESERT_MOUNTAINS,
- FLOWER_FOREST,
- TAIGA_MOUNTAINS,
- SWAMPLAND_MOUNTAINS,
- ICE_PLAINS_SPIKES,
- JUNGLE_MOUNTAINS,
- JUNGLE_EDGE_MOUNTAINS,
- COLD_TAIGA_MOUNTAINS,
- SAVANNA_MOUNTAINS,
- SAVANNA_PLATEAU_MOUNTAINS,
- MESA_BRYCE,
- MESA_PLATEAU_FOREST_MOUNTAINS,
- MESA_PLATEAU_MOUNTAINS,
- BIRCH_FOREST_MOUNTAINS,
- BIRCH_FOREST_HILLS_MOUNTAINS,
- ROOFED_FOREST_MOUNTAINS,
- MEGA_SPRUCE_TAIGA,
- EXTREME_HILLS_MOUNTAINS,
- EXTREME_HILLS_PLUS_MOUNTAINS,
- MEGA_SPRUCE_TAIGA_HILLS,
+ MESA_ROCK,
+ MESA_CLEAR_ROCK,
+ VOID,
+ MUTATED_PLAINS,
+ MUTATED_DESERT,
+ MUTATED_EXTREME_HILLS,
+ MUTATED_FOREST,
+ MUTATED_TAIGA,
+ MUTATED_SWAMPLAND,
+ MUTATED_ICE_FLATS,
+ MUTATED_JUNGLE,
+ MUTATED_JUNGLE_EDGE,
+ MUTATED_BIRCH_FOREST,
+ MUTATED_BIRCH_FOREST_HILLS,
+ MUTATED_ROOFED_FOREST,
+ MUTATED_TAIGA_COLD,
+ MUTATED_REDWOOD_TAIGA,
+ MUTATED_REDWOOD_TAIGA_HILLS,
+ MUTATED_EXTREME_HILLS_WITH_TREES,
+ MUTATED_SAVANNA,
+ MUTATED_SAVANNA_ROCK,
+ MUTATED_MESA,
+ MUTATED_MESA_ROCK,
+ MUTATED_MESA_CLEAR_ROCK
}
diff --git a/src/main/java/org/bukkit/block/EndGateway.java b/src/main/java/org/bukkit/block/EndGateway.java
new file mode 100644
index 00000000..ddbe7779
--- /dev/null
+++ b/src/main/java/org/bukkit/block/EndGateway.java
@@ -0,0 +1,3 @@
+package org.bukkit.block;
+
+public interface EndGateway extends BlockState {}
diff --git a/src/main/java/org/bukkit/block/Structure.java b/src/main/java/org/bukkit/block/Structure.java
new file mode 100644
index 00000000..dd5b8b1e
--- /dev/null
+++ b/src/main/java/org/bukkit/block/Structure.java
@@ -0,0 +1,3 @@
+package org.bukkit.block;
+
+public interface Structure extends BlockState {}
diff --git a/src/main/java/org/bukkit/entity/AreaEffectCloud.java b/src/main/java/org/bukkit/entity/AreaEffectCloud.java
new file mode 100644
index 00000000..5b880f4b
--- /dev/null
+++ b/src/main/java/org/bukkit/entity/AreaEffectCloud.java
@@ -0,0 +1,174 @@
+package org.bukkit.entity;
+
+import java.util.List;
+import org.bukkit.Color;
+import org.bukkit.Effect;
+import org.bukkit.Particle;
+import org.bukkit.potion.PotionEffect;
+
+/**
+ * Represents an area effect cloud which will imbue a potion effect onto
+ * entities which enter it.
+ */
+public interface AreaEffectCloud extends Entity {
+
+ /**
+ * Gets the duration which this cloud will exist for (in ticks).
+ *
+ * @return cloud duration
+ */
+ int getDuration();
+
+ /**
+ * Sets the duration which this cloud will exist for (in ticks).
+ *
+ * @param duration cloud duration
+ */
+ void setDuration(int duration);
+
+ /**
+ * Gets the time which an entity has to be exposed to the cloud before the
+ * effect is applied.
+ *
+ * @return wait time
+ */
+ int getWaitTime();
+
+ /**
+ * Sets the time which an entity has to be exposed to the cloud before the
+ * effect is applied.
+ *
+ * @param waitTime wait time
+ */
+ void setWaitTime(int waitTime);
+
+ /**
+ * Gets the time that an entity will be immune from subsequent exposure.
+ *
+ * @return reapplication delay
+ */
+ int getReapplicationDelay();
+
+ /**
+ * Sets the time that an entity will be immune from subsequent exposure.
+ *
+ * @param delay reapplication delay
+ */
+ void setReapplicationDelay(int delay);
+
+ /**
+ * Gets the amount that the duration of this cloud will decrease by when it
+ * applies an effect to an entity.
+ *
+ * @return duration on use delta
+ */
+ int getDurationOnUse();
+
+ /**
+ * Sets the amount that the duration of this cloud will decrease by when it
+ * applies an effect to an entity.
+ *
+ * @param duration duration on use delta
+ */
+ void setDurationOnUse(int duration);
+ /**
+ * Gets the initial radius of the cloud.
+ *
+ * @return radius
+ */
+ float getRadius();
+
+ /**
+ * Sets the initial radius of the cloud.
+ *
+ * @param radius radius
+ */
+ void setRadius(float radius);
+
+ /**
+ * Gets the amount that the radius of this cloud will decrease by when it
+ * applies an effect to an entity.
+ *
+ * @return radius on use delta
+ */
+ float getRadiusOnUse();
+
+ /**
+ * Sets the amount that the radius of this cloud will decrease by when it
+ * applies an effect to an entity.
+ *
+ * @param radius radius on use delta
+ */
+ void setRadiusOnUse(float radius);
+
+ /**
+ * Gets the amount that the radius of this cloud will decrease by each tick.
+ *
+ * @return radius per tick delta
+ */
+ float getRadiusPerTick();
+
+ /**
+ * Gets the amount that the radius of this cloud will decrease by each tick.
+ *
+ * @param radius per tick delta
+ */
+ void setRadiusPerTick(float radius);
+
+ /**
+ * Gets the particle which this cloud will be composed of
+ *
+ * @return particle the set particle type
+ */
+ Particle getParticle();
+
+ /**
+ * Sets the particle which this cloud will be composed of
+ *
+ * @param particle the new particle type
+ */
+ void setParticle(Particle particle);
+
+ /**
+ * Get a copy of all effects which can be applied by this cloud. No
+ * guarantees are made about the nature of the returned list.
+ *
+ * @return the list of all effects
+ */
+ List<PotionEffect> getEffects();
+
+ /**
+ * Add an effect which can be applied by this cloud.
+ *
+ * @param effect the effect to add
+ */
+ void addEffect(PotionEffect effect);
+
+ /**
+ * Remove an effect from this cloud.
+ *
+ * @param effect the effect to remove
+ */
+ void removeEffect(PotionEffect effect);
+
+ /**
+ * Set the effects of this cloud. Will remove all existing effects.
+ *
+ * @param effects the new effects to set
+ */
+ void setEffects(List<PotionEffect> effects);
+
+ /**
+ * Gets the color of this cloud. Will be applied as a tint to its particles.
+ *
+ * @return cloud color
+ */
+ Color getColor();
+
+ /**
+ * Sets the color of this cloud. Will be applied as a tint to its particles.
+ *
+ * @param color cloud color
+ */
+ void setColor(Color color);
+}
diff --git a/src/main/java/org/bukkit/entity/DragonFireball.java b/src/main/java/org/bukkit/entity/DragonFireball.java
new file mode 100644
index 00000000..6c475a37
--- /dev/null
+++ b/src/main/java/org/bukkit/entity/DragonFireball.java
@@ -0,0 +1,3 @@
+package org.bukkit.entity;
+
+public interface DragonFireball extends Fireball {}
diff --git a/src/main/java/org/bukkit/entity/EntityType.java b/src/main/java/org/bukkit/entity/EntityType.java
index ccc024bf..25b70bf8 100644
--- a/src/main/java/org/bukkit/entity/EntityType.java
+++ b/src/main/java/org/bukkit/entity/EntityType.java
@@ -13,6 +13,7 @@ import org.bukkit.entity.minecart.StorageMinecart;
import org.bukkit.inventory.ItemStack;
import org.bukkit.Location;
import org.bukkit.World;
+import org.bukkit.potion.PotionEffectType;
public enum EntityType {
@@ -80,7 +81,29 @@ public enum EntityType {
* A block that is going to or is about to fall.
*/
FALLING_BLOCK("FallingSand", FallingBlock.class, 21, false),
+ /**
+ * Internal representation of a Firework once it has been launched.
+ */
FIREWORK("FireworksRocketEntity", Firework.class, 22, false),
+ /**
+ * Like {@link #ARROW} but tipped with a specific potion which is applied on contact.
+ */
+ TIPPED_ARROW("TippedArrow", TippedArrow.class, 23),
+ /**
+ * Like {@link #TIPPED_ARROW} but causes the {@link PotionEffectType#GLOWING} effect on all team members.
+ */
+ SPECTRAL_ARROW("SpectralArrow", SpectralArrow.class, 24),
+ /**
+ * Bullet fired by {@link #SHULKER}.
+ */
+ SHULKER_BULLET("ShulkerBullet", ShulkerBullet.class, 25),
+ /**
+ * Like {@link #FIREBALL} but with added effects.
+ */
+ DRAGON_FIREBALL("DragonFireball", DragonFireball.class, 26),
+ /**
+ * Mechanical entity with an inventory for placing weapons / armor into.
+ */
ARMOR_STAND("ArmorStand", ArmorStand.class, 30, false),
/**
* @see CommandMinecart
@@ -133,6 +156,7 @@ public enum EntityType {
WITCH("Witch", Witch.class, 66),
ENDERMITE("Endermite", Endermite.class, 67),
GUARDIAN("Guardian", Guardian.class, 68),
+ SHULKER("Shulker", Shulker.class, 69),
PIG("Pig", Pig.class, 90),
SHEEP("Sheep", Sheep.class, 91),
COW("Cow", Cow.class, 92),
@@ -152,6 +176,7 @@ public enum EntityType {
* A flying splash potion.
*/
SPLASH_POTION(null, ThrownPotion.class, -1, false),
+ AREA_EFFECT_CLOUD(null, AreaEffectCloud.class, -1),
/**
* A flying chicken egg.
*/
diff --git a/src/main/java/org/bukkit/entity/Shulker.java b/src/main/java/org/bukkit/entity/Shulker.java
new file mode 100644
index 00000000..92218cd7
--- /dev/null
+++ b/src/main/java/org/bukkit/entity/Shulker.java
@@ -0,0 +1,3 @@
+package org.bukkit.entity;
+
+public interface Shulker extends Golem {}
diff --git a/src/main/java/org/bukkit/entity/ShulkerBullet.java b/src/main/java/org/bukkit/entity/ShulkerBullet.java
new file mode 100644
index 00000000..7e232338
--- /dev/null
+++ b/src/main/java/org/bukkit/entity/ShulkerBullet.java
@@ -0,0 +1,34 @@
+package org.bukkit.entity;
+
+import org.bukkit.projectiles.ProjectileSource;
+
+public interface ShulkerBullet extends Entity {
+
+ /**
+ * Retrieve the shooter of this bullet.
+ *
+ * @return the {@link ProjectileSource} that shot this bullet
+ */
+ ProjectileSource getShooter();
+
+ /**
+ * Set the shooter of this bullet.
+ *
+ * @param source the {@link ProjectileSource} that shot this bullet
+ */
+ void setShooter(ProjectileSource source);
+
+ /**
+ * Retrieve the target of this bullet.
+ *
+ * @return the targeted entity
+ */
+ Entity getTarget();
+
+ /**
+ * Sets the target of this bullet
+ *
+ * @param target the entity to target
+ */
+ void setTarget(Entity target);
+}
diff --git a/src/main/java/org/bukkit/entity/SpectralArrow.java b/src/main/java/org/bukkit/entity/SpectralArrow.java
new file mode 100644
index 00000000..58f05128
--- /dev/null
+++ b/src/main/java/org/bukkit/entity/SpectralArrow.java
@@ -0,0 +1,3 @@
+package org.bukkit.entity;
+
+public interface SpectralArrow extends Arrow {}
diff --git a/src/main/java/org/bukkit/entity/TippedArrow.java b/src/main/java/org/bukkit/entity/TippedArrow.java
new file mode 100644
index 00000000..3ef2c783
--- /dev/null
+++ b/src/main/java/org/bukkit/entity/TippedArrow.java
@@ -0,0 +1,3 @@
+package org.bukkit.entity;
+
+public interface TippedArrow extends Arrow {}
diff --git a/src/main/java/org/bukkit/entity/Zombie.java b/src/main/java/org/bukkit/entity/Zombie.java
index 59b52fd3..3bd53e19 100644
--- a/src/main/java/org/bukkit/entity/Zombie.java
+++ b/src/main/java/org/bukkit/entity/Zombie.java
@@ -30,6 +30,23 @@ public interface Zombie extends Monster {
* Sets whether the zombie is a villager
*
* @param flag Whether the zombie is a villager
+ * @deprecated Defaults to a basic villager
*/
+ @Deprecated
public void setVillager(boolean flag);
+
+ /**
+ * Sets whether the zombie is a villager
+ *
+ * @param profession the profession of the villager or null to clear
+ */
+ public void setVillagerProfession(Villager.Profession profession);
+
+ /**
+ * Returns the villager profession of the zombie if the
+ * zombie is a villager
+ *
+ * @return the profession or null
+ */
+ public Villager.Profession getVillagerProfession();
}
diff --git a/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java b/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java
index 9ef48c84..f217a890 100644
--- a/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java
+++ b/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java
@@ -408,6 +408,12 @@ public class EntityDamageEvent extends EntityEvent implements Cancellable {
*/
THORNS,
/**
+ * Damage caused by a dragon breathing fire.
+ * <p>
+ * Damage: variable
+ */
+ DRAGON_BREATH,
+ /**
* Custom damage.
* <p>
* Damage: variable
diff --git a/src/main/java/org/bukkit/potion/PotionEffectType.java b/src/main/java/org/bukkit/potion/PotionEffectType.java
index 4919d59e..c0cae2b5 100644
--- a/src/main/java/org/bukkit/potion/PotionEffectType.java
+++ b/src/main/java/org/bukkit/potion/PotionEffectType.java
@@ -126,6 +126,26 @@ public abstract class PotionEffectType {
*/
public static final PotionEffectType SATURATION = new PotionEffectTypeWrapper(23);
+ /**
+ * Outlines the entity so that it can be seen from afar.
+ */
+ public static final PotionEffectType GLOWING = new PotionEffectTypeWrapper(24);
+
+ /**
+ * Causes the entity to float into the air.
+ */
+ public static final PotionEffectType LEVITATION = new PotionEffectTypeWrapper(25);
+
+ /**
+ * Loot table luck.
+ */
+ public static final PotionEffectType LUCK = new PotionEffectTypeWrapper(26);
+
+ /**
+ * Loot table unluck.
+ */
+ public static final PotionEffectType UNLUCK = new PotionEffectTypeWrapper(27);
+
private final int id;
protected PotionEffectType(int id) {
@@ -202,7 +222,7 @@ public abstract class PotionEffectType {
return "PotionEffectType[" + id + ", " + getName() + "]";
}
- private static final PotionEffectType[] byId = new PotionEffectType[24];
+ private static final PotionEffectType[] byId = new PotionEffectType[28];
private static final Map<String, PotionEffectType> byName = new HashMap<String, PotionEffectType>();
// will break on updates.
private static boolean acceptingNew = true;
diff --git a/src/main/java/org/bukkit/potion/PotionType.java b/src/main/java/org/bukkit/potion/PotionType.java
index 6ad9a91a..29e53ef2 100644
--- a/src/main/java/org/bukkit/potion/PotionType.java
+++ b/src/main/java/org/bukkit/potion/PotionType.java
@@ -15,6 +15,11 @@ public enum PotionType {
INSTANT_DAMAGE(12, PotionEffectType.HARM, 2),
WATER_BREATHING(13, PotionEffectType.WATER_BREATHING, 1),
INVISIBILITY(14, PotionEffectType.INVISIBILITY, 1),
+ /**
+ * @deprecated not representable with a damage value!
+ */
+ @Deprecated
+ LUCK(-1, PotionEffectType.LUCK, 1),
;
private final int damageValue, maxLevel;