Skip to content

Commit 3db2e3a

Browse files
Use BaseMenu<?> not Inventory
To improve performance
1 parent c8ce1f8 commit 3db2e3a

File tree

1 file changed

+18
-12
lines changed

1 file changed

+18
-12
lines changed

src/main/java/me/flame/menus/menu/fillers/MenuFiller.java

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,46 +4,52 @@
44

55
import lombok.val;
66

7+
import me.flame.menus.menu.BaseMenu;
8+
79
import org.bukkit.Material;
8-
import org.bukkit.inventory.Inventory;
910
import org.bukkit.inventory.ItemStack;
1011

12+
import org.jetbrains.annotations.Contract;
1113
import org.jetbrains.annotations.NotNull;
1214

1315
@SuppressWarnings("unused")
1416
public final class MenuFiller {
15-
private final Inventory menu;
16-
private final int size;
17+
private final BaseMenu<?> menu;
1718

18-
MenuFiller(@NotNull Inventory menu) {
19+
MenuFiller(@NotNull BaseMenu<?> menu) {
1920
this.menu = menu;
20-
this.size = menu.getSize();
2121
}
2222

23-
public static MenuFiller from(@NotNull Inventory menu) {
23+
@Contract(value = "_ -> new", pure = true)
24+
public static @NotNull MenuFiller from(@NotNull BaseMenu<?> menu) {
2425
return new MenuFiller(menu);
2526
}
2627

27-
public void fillEmptySlots(Material borderMaterial) {
28-
val itemStack = new ItemStack(borderMaterial);
28+
public void fill(Material borderMaterial) {
29+
final int size = menu.getSize();
30+
2931
for (int i = 0; i < size; i++) {
3032
val item = menu.getItem(i);
3133
if (item == null || item.getType() == Material.AIR) {
32-
menu.setItem(i, itemStack);
34+
menu.setItem(i, new ItemStack(borderMaterial));
3335
}
3436
}
3537
}
3638

37-
public void fillEmptySlots(@NotNull MenuItem borderMaterial) {
39+
public void fill(@NotNull MenuItem menuItem) {
40+
final int size = menu.getSize();
41+
3842
for (int i = 0; i < size; i++) {
3943
val item = menu.getItem(i);
4044
if (item == null || item.getType() == Material.AIR) {
41-
menu.setItem(i, borderMaterial.getItemStack());
45+
menu.setItem(i, menuItem.getItemStack());
4246
}
4347
}
4448
}
4549

46-
public void fillEmptySlots(ItemStack itemStack) {
50+
public void fill(ItemStack itemStack) {
51+
final int size = menu.getSize();
52+
4753
for (int i = 0; i < size; i++) {
4854
val item = menu.getItem(i);
4955
if (item == null || item.getType() == Material.AIR) {

0 commit comments

Comments
 (0)