geforkt von Mirrors/Paper
Added utility methods to ItemStack to allow mass adding of enchantments
By: Nathan Adams <dinnerbone@dinnerbone.com>
Dieser Commit ist enthalten in:
Ursprung
868b48c82c
Commit
636640607d
@ -205,7 +205,10 @@ public class ItemStack implements Serializable, ConfigurationSerializable {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ItemStack clone() {
|
public ItemStack clone() {
|
||||||
return new ItemStack(type, amount, durability);
|
ItemStack result = new ItemStack(type, amount, durability);
|
||||||
|
result.addEnchantments(getEnchantments());
|
||||||
|
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -246,6 +249,20 @@ public class ItemStack implements Serializable, ConfigurationSerializable {
|
|||||||
return ImmutableMap.copyOf(enchantments);
|
return ImmutableMap.copyOf(enchantments);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds the specified enchantments to this item stack.
|
||||||
|
* <p>
|
||||||
|
* This method is the same as calling {@link #addEnchantment(org.bukkit.enchantments.Enchantment, int)}
|
||||||
|
* for each element of the map.
|
||||||
|
*
|
||||||
|
* @param enchantments Enchantments to add
|
||||||
|
*/
|
||||||
|
public void addEnchantments(Map<Enchantment, Integer> enchantments) {
|
||||||
|
for (Map.Entry<Enchantment, Integer> entry : getEnchantments().entrySet()) {
|
||||||
|
addEnchantment(entry.getKey(), entry.getValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds the specified {@link Enchantment} to this item stack.
|
* Adds the specified {@link Enchantment} to this item stack.
|
||||||
* <p>
|
* <p>
|
||||||
@ -264,6 +281,20 @@ public class ItemStack implements Serializable, ConfigurationSerializable {
|
|||||||
addUnsafeEnchantment(ench, level);
|
addUnsafeEnchantment(ench, level);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds the specified enchantments to this item stack in an unsafe manner.
|
||||||
|
* <p>
|
||||||
|
* This method is the same as calling {@link #addUnsafeEnchantment(org.bukkit.enchantments.Enchantment, int)}
|
||||||
|
* for each element of the map.
|
||||||
|
*
|
||||||
|
* @param enchantments Enchantments to add
|
||||||
|
*/
|
||||||
|
public void addUnsafeEnchantments(Map<Enchantment, Integer> enchantments) {
|
||||||
|
for (Map.Entry<Enchantment, Integer> entry : getEnchantments().entrySet()) {
|
||||||
|
addUnsafeEnchantment(entry.getKey(), entry.getValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds the specified {@link Enchantment} to this item stack.
|
* Adds the specified {@link Enchantment} to this item stack.
|
||||||
* <p>
|
* <p>
|
||||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren