Detach the vine from the specified face of an adjacent block. @param face The face to detach.
(BlockFace face)
| 152 | * @param face The face to detach. |
| 153 | */ |
| 154 | public void removeFromFace(BlockFace face) { |
| 155 | switch (face) { |
| 156 | case WEST: |
| 157 | setData((byte) (getData() & ~VINE_WEST)); |
| 158 | break; |
| 159 | case NORTH: |
| 160 | setData((byte) (getData() & ~VINE_NORTH)); |
| 161 | break; |
| 162 | case SOUTH: |
| 163 | setData((byte) (getData() & ~VINE_SOUTH)); |
| 164 | break; |
| 165 | case EAST: |
| 166 | setData((byte) (getData() & ~VINE_EAST)); |
| 167 | break; |
| 168 | case NORTH_WEST: |
| 169 | removeFromFace(BlockFace.WEST); |
| 170 | removeFromFace(BlockFace.NORTH); |
| 171 | break; |
| 172 | case SOUTH_WEST: |
| 173 | removeFromFace(BlockFace.WEST); |
| 174 | removeFromFace(BlockFace.SOUTH); |
| 175 | break; |
| 176 | case NORTH_EAST: |
| 177 | removeFromFace(BlockFace.EAST); |
| 178 | removeFromFace(BlockFace.NORTH); |
| 179 | break; |
| 180 | case SOUTH_EAST: |
| 181 | removeFromFace(BlockFace.EAST); |
| 182 | removeFromFace(BlockFace.SOUTH); |
| 183 | break; |
| 184 | case UP: |
| 185 | break; |
| 186 | default: |
| 187 | throw new IllegalArgumentException("Vines can't go on face " + face.toString()); |
| 188 | } |
| 189 | } |
| 190 | |
| 191 | @Override |
| 192 | public String toString() { |