public void setItemInMainHand(Material type, int data) { Optional<WrappedBlockData> optional; if (type == null) optional = Optional.empty(); else optional = Optional.of(WrappedBlockData.createData(type, data)); setData(MetaIndex.ENDERMAN_ITEM, optional); }
public WrappedBlockData(Object handle) { super(IBLOCK_DATA); setHandle(handle); }
public static <T> WrappedParticle<T> create(Particle particle, T data) { ensureMethods(); Object bukkitData = data; if (data instanceof WrappedBlockData) { WrappedBlockData blockData = (WrappedBlockData) data; bukkitData = toCraftData.invoke(null, blockData.getHandle()); } Object handle = toNMS.invoke(null, particle, bukkitData); return new WrappedParticle<>(handle, particle, data); } }
return Optional.of(((WrappedBlockData) val).getHandle());
@Override public WrappedBlockData deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException { JsonObject obj = json.getAsJsonObject(); return WrappedBlockData.createData(Material.valueOf(obj.get("type").getAsString()), obj.get("data").getAsInt()); } }
@Override public WrappedBlockData deepClone() { return WrappedBlockData.createData(getType(), getData()); }
@Override public ItemStack getItemInMainHand() { Optional<WrappedBlockData> value = getData(MetaIndex.ENDERMAN_ITEM); if (value.isPresent()) { WrappedBlockData pair = value.get(); Material id = pair.getType(); int data = pair.getData(); return new ItemStack(id, 1, (short) data); } else { return null; } }
data = WrappedBlockData.createData(material); break; case ITEM_CRACK: