58 lines
1.7 KiB
Java
58 lines
1.7 KiB
Java
package com.songoda.epicbuckets.gui;
|
|
|
|
import com.songoda.epicbuckets.EpicBuckets;
|
|
import com.songoda.epicbuckets.file.ConfigManager;
|
|
import com.songoda.epicbuckets.shop.Shop;
|
|
import com.songoda.epicbuckets.shop.ShopManager;
|
|
import com.songoda.epicbuckets.utils.gui.AbstractGUI;
|
|
import org.bukkit.entity.Player;
|
|
import org.bukkit.inventory.ItemStack;
|
|
|
|
public class GUIMain extends AbstractGUI {
|
|
|
|
private EpicBuckets epicBuckets;
|
|
private ConfigManager configManager;
|
|
private ShopManager shopManager;
|
|
|
|
private int size;
|
|
|
|
public GUIMain(Player player) {
|
|
super(player);
|
|
this.epicBuckets = EpicBuckets.getInstance();
|
|
configManager = epicBuckets.getConfigManager();
|
|
shopManager = epicBuckets.getShopManager();
|
|
this.size = configManager.getInventorySize() * 9;
|
|
|
|
init(EpicBuckets.getInstance().getConfigManager().getInventoryName(), size);
|
|
}
|
|
|
|
@Override
|
|
protected void constructGUI() {
|
|
if (configManager.isFillInventory()) {
|
|
int num = 0;
|
|
while (num != size) {
|
|
ItemStack glass = configManager.getFillItem();
|
|
inventory.setItem(num, glass);
|
|
num++;
|
|
}
|
|
}
|
|
|
|
epicBuckets.getShopManager().getShops().stream().filter(Shop::isEnabled).forEach(shop ->
|
|
inventory.setItem(shop.getSlot(), shop.getShopItem()));
|
|
|
|
}
|
|
|
|
@Override
|
|
protected void registerClickables() {
|
|
epicBuckets.getShopManager().getShops().stream().filter(Shop::isEnabled).forEach(shop ->
|
|
registerClickable(shop.getSlot(), ((player1, inventory1, cursor, slot, type) ->
|
|
new GUIShop(player, shop))));
|
|
|
|
}
|
|
|
|
@Override
|
|
protected void registerOnCloses() {
|
|
|
|
}
|
|
}
|