|
1 | 1 | package me.flame.menus.items;
|
2 | 2 |
|
| 3 | +import lombok.EqualsAndHashCode; |
| 4 | + |
3 | 5 | import me.flame.menus.components.nbt.ItemNbt;
|
| 6 | + |
4 | 7 | import org.bukkit.Material;
|
5 | 8 | import org.bukkit.event.inventory.InventoryClickEvent;
|
6 | 9 | import org.bukkit.inventory.ItemStack;
|
|
25 | 28 | * ...
|
26 | 29 | * });
|
27 | 30 | *
|
28 |
| - * // implementing a new MenuItem: |
29 |
| - * menu.addItem(ItemBuilder.of(itemStack, 2) // 2 is the amount of items you get from this "ItemBuilder" |
| 31 | + * // implementing a new itemStack: |
| 32 | + * menu.addItem(new ItemBuilder(itemStack, 2) // 2 is the amount of items you get from this "ItemBuilder" |
30 | 33 | * .setName(...).setLore(...)
|
31 | 34 | * .buildItem(() -> ...);
|
32 | 35 | * // the lambda (Consumer) at ItemBuilder#buildItem(Consumer) is optional and you do not have to provide an action, you can use ItemBuilder#buildItem()
|
33 | 36 | * }</pre>
|
34 | 37 | */
|
| 38 | + |
| 39 | +//changed |
| 40 | + |
| 41 | +@EqualsAndHashCode |
35 | 42 | @SuppressWarnings("unused")
|
36 |
| -public final class MenuItem { |
| 43 | +public final class MenuItem implements Cloneable { |
37 | 44 | private @Nullable Consumer<InventoryClickEvent> clickAction;
|
38 | 45 | private ItemStack itemStack;
|
39 | 46 | private final UUID uuid = UUID.randomUUID();
|
@@ -72,4 +79,10 @@ public void setItemStack(ItemStack itemStack) {
|
72 | 79 | public Material getType() {
|
73 | 80 | return itemStack.getType();
|
74 | 81 | }
|
| 82 | + |
| 83 | + @SuppressWarnings("MethodDoesntCallSuperMethod") |
| 84 | + @Override |
| 85 | + public MenuItem clone() { |
| 86 | + return new MenuItem(itemStack, clickAction); |
| 87 | + } |
75 | 88 | }
|
0 commit comments