use of net.minecraft.server.v1_15_R1.NBTTagCompound in project Essentials by EssentialsX.
the class v1_8_R1SpawnerProvider method getEntityType.
@Override
public EntityType getEntityType(ItemStack is) {
net.minecraft.server.v1_8_R1.ItemStack itemStack;
CraftItemStack craftStack = CraftItemStack.asCraftCopy(is);
itemStack = CraftItemStack.asNMSCopy(craftStack);
NBTTagCompound tag = itemStack.getTag();
if (tag == null || !tag.hasKey("BlockEntityTag")) {
throw new IllegalArgumentException();
}
String name = tag.getCompound("BlockEntityTag").getString("EntityId");
return EntityType.fromName(name);
}
use of net.minecraft.server.v1_15_R1.NBTTagCompound in project Essentials by EssentialsX.
the class v1_8_R2SpawnerProvider method setEntityType.
@Override
public ItemStack setEntityType(ItemStack is, EntityType type) {
net.minecraft.server.v1_8_R2.ItemStack itemStack;
CraftItemStack craftStack = CraftItemStack.asCraftCopy(is);
itemStack = CraftItemStack.asNMSCopy(craftStack);
NBTTagCompound tag = itemStack.getTag();
if (tag == null) {
tag = new NBTTagCompound();
itemStack.setTag(tag);
}
if (!tag.hasKey("BlockEntityTag")) {
tag.set("BlockEntityTag", new NBTTagCompound());
}
tag = itemStack.getTag().getCompound("BlockEntityTag");
tag.setString("EntityId", type.getName());
ItemStack bukkitItemStack = CraftItemStack.asCraftMirror(itemStack).clone();
return setDisplayName(bukkitItemStack, type);
}
use of net.minecraft.server.v1_15_R1.NBTTagCompound in project Ublisk by Derkades.
the class Item method setNBTValue.
public Item setNBTValue(String key, boolean bool) {
NBTTagCompound compound = this.getNBT();
compound.setBoolean(key, bool);
return this.setNBT(compound);
}
use of net.minecraft.server.v1_15_R1.NBTTagCompound in project Ublisk by Derkades.
the class CustomItem method fromItem.
public static CustomItem fromItem(Item item) {
if (item.getType() != CUSTOM_ITEM) {
throw new IllegalArgumentException("The provided item is not a custom item.");
}
NBTTagCompound nbt = item.getNBT();
if (!nbt.hasKey(UbliskNBT.IDENTIFIER.toString())) {
throw new IllegalArgumentException("The provided item does not have an item identifier in its NBT");
}
String identifier = nbt.getString(UbliskNBT.IDENTIFIER.toString());
return new CustomItem(identifier, true);
}
use of net.minecraft.server.v1_15_R1.NBTTagCompound in project Ublisk by Derkades.
the class Sword method getItemStack.
@Override
public ItemStack getItemStack() {
Item item = new Item(this.getMaterial()).setName(this.getColoredName()).setLore(this.getLore());
NBTTagList modifiers = new NBTTagList();
NBTTagCompound damage = new NBTTagCompound();
damage.setString("AttributeName", "generic.attackDamage");
damage.setString("Name", "generic.attackDamage");
damage.setDouble("Amount", this.getDamage());
damage.setInt("Operation", 1);
damage.setInt("UUIDLeast", 652);
damage.setInt("UUIDMost", 12098);
modifiers.add(damage);
if (this.getMovementSpeed() != -1) {
NBTTagCompound speed = new NBTTagCompound();
speed.setString("AttributeName", "generic.movementSpeed");
speed.setString("Name", "generic.movementSpeed");
speed.setDouble("Amount", this.getMovementSpeed());
speed.setInt("Operation", 1);
speed.setInt("UUIDLeast", 652);
speed.setInt("UUIDMost", 12098);
modifiers.add(speed);
}
if (this.getAttackSpeed().getValue() != -1) {
NBTTagCompound attackSpeed = new NBTTagCompound();
attackSpeed.setString("AttributeName", "generic.attackSpeed");
attackSpeed.setString("Name", "generic.attackSpeed");
attackSpeed.setDouble("Amount", this.getAttackSpeed().getValue());
attackSpeed.setInt("Operation", 1);
attackSpeed.setInt("UUIDLeast", 652);
attackSpeed.setInt("UUIDMost", 12098);
modifiers.add(attackSpeed);
}
if (this.getKnockbackResistance() != -1) {
NBTTagCompound knockback = new NBTTagCompound();
knockback.setString("AttributeName", "generic.knockbackResistance");
knockback.setString("Name", "generic.knockbackResistance");
knockback.setDouble("Amount", this.getKnockbackResistance());
knockback.setInt("Operation", 1);
knockback.setInt("UUIDLeast", 652);
knockback.setInt("UUIDMost", 12098);
modifiers.add(knockback);
}
NBTTagCompound compound = item.getNBT();
compound.set("AttributeModifiers", modifiers);
compound.setInt("HideFlags", 7);
compound.setBoolean("Unbreakable", true);
item.setNBT(compound);
item.setDamage(this.getDamage());
return item.getItemStack();
}
Aggregations