Fixed rollback item metadata handling
This commit is contained in:
parent
bdbc465998
commit
56f5c04619
1 changed files with 3 additions and 17 deletions
|
|
@ -22,36 +22,22 @@ public class RollbackItemHandler {
|
|||
* @return Object array containing [slot, facing, itemstack]
|
||||
*/
|
||||
public static Object[] populateItemStack(ItemStack itemstack, byte[] metadata) {
|
||||
int slot = 0;
|
||||
String face = "";
|
||||
|
||||
if (metadata != null) {
|
||||
try {
|
||||
ByteArrayInputStream metaByteStream = new ByteArrayInputStream(metadata);
|
||||
BukkitObjectInputStream metaObjectStream = new BukkitObjectInputStream(metaByteStream);
|
||||
@SuppressWarnings("unchecked")
|
||||
List<Object> meta = (List<Object>) metaObjectStream.readObject();
|
||||
Object metaList = metaObjectStream.readObject();
|
||||
metaObjectStream.close();
|
||||
metaByteStream.close();
|
||||
|
||||
for (Object value : meta) {
|
||||
if (value instanceof Integer) {
|
||||
slot = (Integer) value;
|
||||
}
|
||||
else if (value instanceof ItemStack) {
|
||||
itemstack = (ItemStack) value;
|
||||
}
|
||||
else if (value instanceof String) {
|
||||
face = (String) value;
|
||||
}
|
||||
}
|
||||
return RollbackUtil.populateItemStack(itemstack, metaList);
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
return new Object[] { slot, face, itemstack };
|
||||
return new Object[] { 0, "", itemstack };
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue