本文整理汇总了Java中org.bukkit.attribute.ItemAttributeModifier类的典型用法代码示例。如果您正苦于以下问题:Java ItemAttributeModifier类的具体用法?Java ItemAttributeModifier怎么用?Java ItemAttributeModifier使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
ItemAttributeModifier类属于org.bukkit.attribute包,在下文中一共展示了ItemAttributeModifier类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: parseItemAttributeModifier
import org.bukkit.attribute.ItemAttributeModifier; //导入依赖的package包/类
public static Pair<org.bukkit.attribute.Attribute, ItemAttributeModifier> parseItemAttributeModifier(Element el) throws InvalidXMLException {
return Pair.create(
parseAttribute(new Node(el)),
new ItemAttributeModifier(
parseEquipmentSlot(Node.fromAttr(el, "slot"), null),
parseAttributeModifier(el).second
)
);
}
示例2: applyMeta
import org.bukkit.attribute.ItemAttributeModifier; //导入依赖的package包/类
public static ItemStack applyMeta(ItemStack itemStack, Element element) {
for (Element enchant : element.getChildren("enchantment")) {
String ench = enchant.getText();
Enchantment enchantment = Enchantment.getByName(Strings.getTechnicalName(ench));
int lvl = Numbers.parseInteger(enchant.getAttributeValue("level"), 1);
if (enchantment == null) {
//TODO: NMS name check
} else {
itemStack.addUnsafeEnchantment(enchantment, lvl);
}
}
ItemMeta meta = itemStack.getItemMeta();
for (Element effect : element.getChildren("effect")) {
PotionEffect potionEffect = getPotion(effect);
if (!((PotionMeta) meta).getCustomEffects().contains(potionEffect)) {
((PotionMeta) meta).addCustomEffect(potionEffect, true);
}
}
for (Element attribute : element.getChildren("attribute")) {
ItemAttributeModifier itemAttribute = getAttribute(attribute);
if (!meta.getModifiedAttributes().contains(attribute.getText())) {
meta.addAttributeModifier(attribute.getText(), itemAttribute);
}
}
/* TODO: can-destroy & can-place-on, and all attributes
* @link https://docs.oc.tc/modules/item_mods#itemmeta
*/
itemStack.setItemMeta(meta);
return itemStack;
}
示例3: parseAttributes
import org.bukkit.attribute.ItemAttributeModifier; //导入依赖的package包/类
private static List<ItemAttributeModifier> parseAttributes(String attributes) {
List<ItemAttributeModifier> list = Lists.newArrayList();
for (String attribute : attributes.split(";")) {
String[] attr = attribute.split(":");
list.add(new ItemAttributeModifier(null,
new AttributeModifier(UUID.randomUUID(), attr[0], Numbers.parseDouble(attr[2]), getOperation(attr[1]))));
}
return list;
}
示例4: parseAttributes
import org.bukkit.attribute.ItemAttributeModifier; //导入依赖的package包/类
private static List<ItemAttributeModifier> parseAttributes(String attributes) {
List<ItemAttributeModifier> list = new ArrayList<>();
for (String attribute : attributes.split(";")) {
String[] attr = attribute.split(":");
list.add(new ItemAttributeModifier(null, new AttributeModifier(UUID.randomUUID(), attr[0], Double.parseDouble(attr[2]), getOperation(attr[1]))));
}
return list;
}
示例5: getAttribute
import org.bukkit.attribute.ItemAttributeModifier; //导入依赖的package包/类
private static ItemAttributeModifier getAttribute(Element attribute) {
return new ItemAttributeModifier(getEquipmentSlot(attribute.getAttributeValue("slot", "")),
new AttributeModifier(UUID.randomUUID(), attribute.getText(),
Double.parseDouble(attribute.getAttributeValue("amount", "0.0")),
getOperation(attribute.getAttributeValue("operation", "add"))));
}
示例6: getAttribute
import org.bukkit.attribute.ItemAttributeModifier; //导入依赖的package包/类
public static ItemAttributeModifier getAttribute(Element attribute) {
return new ItemAttributeModifier(getEquipmentSlot(attribute.getAttributeValue("slot", "")),
new AttributeModifier(UUID.randomUUID(), attribute.getText(), Double.parseDouble(attribute.getAttributeValue("amount", "0.0")), getOperation(attribute.getAttributeValue("operation", "add"))));
}