@Override public int hashCode() { return ((getItemTypeId() << 8) ^ getData()); }
@Override public boolean equals(Object obj) { if (obj != null && obj instanceof MaterialData) { MaterialData md = (MaterialData) obj; return (md.getItemTypeId() == getItemTypeId() && md.getData() == getData()); } else { return false; } }
return new int[]{material.getItemTypeId(), material.getData()}; case TILE_BREAK: if (material == null) { return new int[]{material.getItemTypeId() + (material.getData() << 12)}; case TILE_DUST: if (material == null) { return new int[]{material.getItemTypeId()}; default: return EMPTY;
@Override public void setCarriedMaterial(MaterialData type) { carriedMaterial = type; if (type == null) { metadata.set(MetadataIndex.ENDERMAN_BLOCK, 0); } else { // TODO: store block data. This code appears to be broken (although documented in the // protocol): int blockId = type.getItemTypeId() << 4 | type.getData(); metadata.set(MetadataIndex.ENDERMAN_BLOCK, type.getItemTypeId()); } }
@Override public void setBlock(int x, int y, int z, MaterialData materialData) { setBlock(x, y, z, materialData.getItemTypeId(), materialData.getData()); }
return new int[]{material.getItemTypeId() + (material.getData() << 12)};
@Override public boolean equals(Object obj) { if (obj != null && obj instanceof MaterialData) { MaterialData md = (MaterialData) obj; return (md.getItemTypeId() == getItemTypeId() && md.getData() == getData()); } else { return false; } }
@Override public int hashCode() { return ((getItemTypeId() << 8) ^ getData()); }