Bukkit-API  1.7.9-R0.2
The inofficial Bukkit-API
material/Dispenser.java
1 package org.bukkit.material;
2 
3 import org.bukkit.Material;
5 
6 /**
7  * Represents a dispenser.
8  */
9 public class Dispenser extends FurnaceAndDispenser {
10 
11  public Dispenser() {
12  super(Material.DISPENSER);
13  }
14 
15  public Dispenser(BlockFace direction) {
16  this();
17  setFacingDirection(direction);
18  }
19 
20  /**
21  *
22  * @deprecated Magic value
23  */
24  @Deprecated
25  public Dispenser(final int type) {
26  super(type);
27  }
28 
29  public Dispenser(final Material type) {
30  super(type);
31  }
32 
33  /**
34  *
35  * @deprecated Magic value
36  */
37  @Deprecated
38  public Dispenser(final int type, final byte data) {
39  super(type, data);
40  }
41 
42  /**
43  *
44  * @deprecated Magic value
45  */
46  @Deprecated
47  public Dispenser(final Material type, final byte data) {
48  super(type, data);
49  }
50 
51  public void setFacingDirection(BlockFace face) {
52  byte data;
53 
54  switch (face) {
55  case DOWN:
56  data = 0x0;
57  break;
58 
59  case UP:
60  data = 0x1;
61  break;
62 
63  case NORTH:
64  data = 0x2;
65  break;
66 
67  case SOUTH:
68  data = 0x3;
69  break;
70 
71  case WEST:
72  data = 0x4;
73  break;
74 
75  case EAST:
76  default:
77  data = 0x5;
78  }
79 
80  setData(data);
81  }
82 
83  public BlockFace getFacing() {
84  int data = getData() & 0x7;
85 
86  switch (data) {
87  case 0x0:
88  return BlockFace.DOWN;
89 
90  case 0x1:
91  return BlockFace.UP;
92 
93  case 0x2:
94  return BlockFace.NORTH;
95 
96  case 0x3:
97  return BlockFace.SOUTH;
98 
99  case 0x4:
100  return BlockFace.WEST;
101 
102  case 0x5:
103  default:
104  return BlockFace.EAST;
105  }
106  }
107 
108  @Override
109  public Dispenser clone() {
110  return (Dispenser) super.clone();
111  }
112 }
void setFacingDirection(BlockFace face)
Dispenser(final Material type, final byte data)
Dispenser(final int type, final byte data)