summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/main/java/org/bukkit/ItemStack.java27
-rw-r--r--src/main/java/org/bukkit/block/BlockState.java5
2 files changed, 14 insertions, 18 deletions
diff --git a/src/main/java/org/bukkit/ItemStack.java b/src/main/java/org/bukkit/ItemStack.java
index 65f4e540..e318cd7a 100644
--- a/src/main/java/org/bukkit/ItemStack.java
+++ b/src/main/java/org/bukkit/ItemStack.java
@@ -40,14 +40,7 @@ public class ItemStack {
this.type = type;
this.amount = amount;
this.damage = damage;
-
- Material mat = Material.getMaterial(type);
-
- if (mat == null) {
- this.data = new MaterialData(type, data);
- } else {
- this.data = mat.getNewData(data);
- }
+ createData(data);
}
public ItemStack(final Material type, final int amount, final byte damage, final byte data) {
@@ -92,14 +85,7 @@ public class ItemStack {
*/
public void setTypeID(int type) {
this.type = type;
-
- Material mat = Material.getMaterial(type);
-
- if (mat == null) {
- data = new MaterialData(type, (byte)0);
- } else {
- data = mat.getNewData((byte)0);
- }
+ createData((byte)0);
}
/**
@@ -185,6 +171,15 @@ public class ItemStack {
return -1;
}
+ private void createData(final byte data) {
+ Material mat = Material.getMaterial(type);
+ if (mat == null) {
+ this.data = new MaterialData(type, data);
+ } else {
+ this.data = mat.getNewData(data);
+ }
+ }
+
@Override
public String toString() {
return "ItemStack{"+getType().name()+" x "+getAmount()+"}";
diff --git a/src/main/java/org/bukkit/block/BlockState.java b/src/main/java/org/bukkit/block/BlockState.java
index cb124fc7..acfc3209 100644
--- a/src/main/java/org/bukkit/block/BlockState.java
+++ b/src/main/java/org/bukkit/block/BlockState.java
@@ -5,6 +5,7 @@ import org.bukkit.Block;
import org.bukkit.Chunk;
import org.bukkit.Material;
import org.bukkit.World;
+import org.bukkit.material.MaterialData;
/**
* Represents a captured state of a block, which will not change automatically.
@@ -27,7 +28,7 @@ public interface BlockState {
*
* @return block specific metadata
*/
- byte getData();
+ MaterialData getData();
/**
* Gets the type of this block
@@ -90,7 +91,7 @@ public interface BlockState {
*
* @param data New block specific metadata
*/
- void setData(byte data);
+ void setData(MaterialData data);
/**
* Sets the type of this block