Fork of Poseidon providing Bukkit #1060 to older Beta versions (b1.0-b1.7.3)
1package org.bukkit.material;
2
3import org.bukkit.Material;
4import org.bukkit.block.BlockFace;
5
6/**
7 * Represents a furnace or a dispenser.
8 */
9public class FurnaceAndDispenser extends MaterialData implements Directional {
10 public FurnaceAndDispenser(final int type) {
11 super(type);
12 }
13
14 public FurnaceAndDispenser(final Material type) {
15 super(type);
16 }
17
18 public FurnaceAndDispenser(final int type, final byte data) {
19 super(type, data);
20 }
21
22 public FurnaceAndDispenser(final Material type, final byte data) {
23 super(type, data);
24 }
25
26 public void setFacingDirection(BlockFace face) {
27 byte data;
28
29 switch (face) {
30 case EAST:
31 data = 0x2;
32 break;
33
34 case WEST:
35 data = 0x3;
36 break;
37
38 case NORTH:
39 data = 0x4;
40 break;
41
42 case SOUTH:
43 default:
44 data = 0x5;
45 }
46
47 setData(data);
48 }
49
50 public BlockFace getFacing() {
51 byte data = getData();
52
53 switch (data) {
54 case 0x2:
55 return BlockFace.EAST;
56
57 case 0x3:
58 return BlockFace.WEST;
59
60 case 0x4:
61 return BlockFace.NORTH;
62
63 case 0x5:
64 default:
65 return BlockFace.SOUTH;
66 }
67 }
68
69 @Override
70 public String toString() {
71 return super.toString() + " facing " + getFacing();
72 }
73}