161 lines
3.7 KiB
Java
161 lines
3.7 KiB
Java
package com.rsscripting.rswarehouse.autodeposit;
|
|
|
|
import com.rsscripting.rswarehouse.autodeposit.autodepositdao.AutoDepositDAO;
|
|
import com.rsscripting.rswarehouse.session.GuiSession;
|
|
import com.rsscripting.rswarehouse.session.GuiSessionManager;
|
|
import com.rsscripting.rswarehouse.menuholder.RSMenuHolder;
|
|
import com.rsscripting.rswarehouse.utils.RSMenuUtils;
|
|
import net.kyori.adventure.text.Component;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.Material;
|
|
import org.bukkit.entity.Player;
|
|
import org.bukkit.inventory.Inventory;
|
|
import org.bukkit.inventory.ItemStack;
|
|
|
|
import java.util.List;
|
|
|
|
public class AutoDepositMenu {
|
|
|
|
public static final String MENU_ID =
|
|
"AUTO_DEPOSIT";
|
|
|
|
public static final String TITLE =
|
|
"Auto Deposit";
|
|
|
|
public static void open(
|
|
Player player
|
|
) {
|
|
|
|
GuiSession session =
|
|
GuiSessionManager.getSession(
|
|
player
|
|
);
|
|
|
|
int page =
|
|
Math.max(
|
|
1,
|
|
session.getAutoDepositPage()
|
|
);
|
|
|
|
session.setAutoDepositPage(
|
|
page
|
|
);
|
|
|
|
Inventory inventory =
|
|
Bukkit.createInventory(
|
|
new RSMenuHolder(
|
|
MENU_ID
|
|
),
|
|
54,
|
|
Component.text(
|
|
TITLE
|
|
)
|
|
);
|
|
|
|
ItemStack filler =
|
|
RSMenuUtils.createFillerPane();
|
|
|
|
for (
|
|
int slot = 0;
|
|
slot <= 8;
|
|
slot++
|
|
) {
|
|
|
|
inventory.setItem(
|
|
slot,
|
|
filler
|
|
);
|
|
|
|
}
|
|
|
|
boolean enabled =
|
|
AutoDepositDAO.isEnabled(
|
|
player.getUniqueId()
|
|
);
|
|
|
|
inventory.setItem(
|
|
2,
|
|
enabled
|
|
? RSMenuUtils.createMenuItem(
|
|
Material.GREEN_DYE,
|
|
"Enabled"
|
|
)
|
|
: RSMenuUtils.createMenuItem(
|
|
Material.RED_DYE,
|
|
"Disabled"
|
|
)
|
|
);
|
|
|
|
inventory.setItem(
|
|
4,
|
|
RSMenuUtils.createMenuItem(
|
|
Material.OAK_DOOR,
|
|
"§a Back to Category Menu"
|
|
)
|
|
);
|
|
|
|
List<ItemStack> filters =
|
|
AutoDepositDAO.getFilters(
|
|
player.getUniqueId()
|
|
);
|
|
|
|
int highestPage =
|
|
filters.size() / 45 + 1;
|
|
|
|
int start =
|
|
(page - 1) * 45;
|
|
|
|
int slot =
|
|
9;
|
|
|
|
for (
|
|
int i = start;
|
|
i < filters.size()
|
|
&& slot <= 53;
|
|
i++
|
|
) {
|
|
|
|
inventory.setItem(
|
|
slot++,
|
|
filters.get(
|
|
i
|
|
)
|
|
);
|
|
|
|
}
|
|
|
|
if (
|
|
page > 1
|
|
) {
|
|
|
|
inventory.setItem(
|
|
0,
|
|
RSMenuUtils.createMenuItem(
|
|
Material.ARROW,
|
|
"§ePrevious Page"
|
|
)
|
|
);
|
|
|
|
}
|
|
|
|
if (
|
|
page < highestPage + 1
|
|
) {
|
|
|
|
inventory.setItem(
|
|
8,
|
|
RSMenuUtils.createMenuItem(
|
|
Material.ARROW,
|
|
"§eNext Page"
|
|
)
|
|
);
|
|
|
|
}
|
|
|
|
player.openInventory(
|
|
inventory
|
|
);
|
|
|
|
}
|
|
|
|
} |