From 7d8585ee47fe531356a484ec256320144edaa717 Mon Sep 17 00:00:00 2001 From: Travis Watkins Date: Fri, 12 Apr 2013 16:20:50 -0500 Subject: Correct 1.5 material data. Fixes BUKKIT-4004, BUKKIT-3785 --- src/main/java/org/bukkit/Material.java | 4 +- src/main/java/org/bukkit/material/Dispenser.java | 57 ++++++++++++++++++++++++ 2 files changed, 59 insertions(+), 2 deletions(-) (limited to 'src/main') diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java index b2d13ec7..6fb6bb4a 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java @@ -220,8 +220,8 @@ public enum Material { HOPPER(154), QUARTZ_BLOCK(155), QUARTZ_STAIRS(156, Stairs.class), - ACTIVATOR_RAIL(157), - DROPPER(158, DirectionalContainer.class), + ACTIVATOR_RAIL(157, PoweredRail.class), + DROPPER(158, Dispenser.class), // ----- Item Separator ----- IRON_SPADE(256, 1, 250), IRON_PICKAXE(257, 1, 250), diff --git a/src/main/java/org/bukkit/material/Dispenser.java b/src/main/java/org/bukkit/material/Dispenser.java index 4168d88a..34228827 100644 --- a/src/main/java/org/bukkit/material/Dispenser.java +++ b/src/main/java/org/bukkit/material/Dispenser.java @@ -33,6 +33,63 @@ public class Dispenser extends FurnaceAndDispenser { super(type, data); } + public void setFacingDirection(BlockFace face) { + byte data; + + switch (face) { + case DOWN: + data = 0x0; + break; + + case UP: + data = 0x1; + break; + + case NORTH: + data = 0x2; + break; + + case SOUTH: + data = 0x3; + break; + + case WEST: + data = 0x4; + break; + + case EAST: + default: + data = 0x5; + } + + setData(data); + } + + public BlockFace getFacing() { + int data = getData() & 0x7; + + switch (data) { + case 0x0: + return BlockFace.DOWN; + + case 0x1: + return BlockFace.UP; + + case 0x2: + return BlockFace.NORTH; + + case 0x3: + return BlockFace.SOUTH; + + case 0x4: + return BlockFace.WEST; + + case 0x5: + default: + return BlockFace.EAST; + } + } + @Override public Dispenser clone() { return (Dispenser) super.clone(); -- cgit v1.2.3