Fork of Poseidon providing Bukkit #1060 to older Beta versions (b1.0-b1.7.3)
at develop 85 lines 1.6 kB view raw
1package org.bukkit.material; 2 3import org.bukkit.Material; 4import org.bukkit.block.BlockFace; 5 6/** 7 * MaterialData for torches 8 */ 9public class Torch extends SimpleAttachableMaterialData { 10 public Torch() { 11 super(Material.TORCH); 12 } 13 14 public Torch(final int type) { 15 super(type); 16 } 17 18 public Torch(final Material type) { 19 super(type); 20 } 21 22 public Torch(final int type, final byte data) { 23 super(type, data); 24 } 25 26 public Torch(final Material type, final byte data) { 27 super(type, data); 28 } 29 30 /** 31 * Gets the face that this block is attached on 32 * 33 * @return BlockFace attached to 34 */ 35 public BlockFace getAttachedFace() { 36 byte data = getData(); 37 38 switch (data) { 39 case 0x1: 40 return BlockFace.NORTH; 41 42 case 0x2: 43 return BlockFace.SOUTH; 44 45 case 0x3: 46 return BlockFace.EAST; 47 48 case 0x4: 49 return BlockFace.WEST; 50 51 case 0x5: 52 return BlockFace.DOWN; 53 } 54 55 return null; 56 } 57 58 public void setFacingDirection(BlockFace face) { 59 byte data; 60 61 switch (face) { 62 case SOUTH: 63 data = 0x1; 64 break; 65 66 case NORTH: 67 data = 0x2; 68 break; 69 70 case WEST: 71 data = 0x3; 72 break; 73 74 case EAST: 75 data = 0x4; 76 break; 77 78 case UP: 79 default: 80 data = 0x5; 81 } 82 83 setData(data); 84 } 85}