Search in sources :

Example 1 with OutlinePane

use of com.github.stefvanschie.inventoryframework.pane.OutlinePane in project Nodewar by Rosstail.

the class EmpiresListGUI method initGUI.

public static void initGUI(Player player, fr.rosstail.nodewar.Nodewar plugin) {
    FileConfiguration customConfig = new YamlConfiguration();
    String path = "gui/empireListGUI.yml";
    File file = new File(plugin.getDataFolder(), path);
    try {
        customConfig.load(file);
        ChestGui gui = new ChestGui(customConfig.getInt("gui.size"), AdaptMessage.playerMessage(player, customConfig.getString("gui.display")));
        OutlinePane background = new OutlinePane(0, 0, 9, gui.getRows(), Pane.Priority.LOWEST);
        background.addItem(new GuiItem(new ItemStack(Material.BLACK_STAINED_GLASS_PANE)));
        background.setRepeat(true);
        gui.addPane(background);
        StaticPane itemSlot = new StaticPane(customConfig.getInt("gui.item-slot.x"), customConfig.getInt("gui.item-slot.y"), 9, gui.getRows(), Pane.Priority.HIGHEST);
        initPane(player, plugin, customConfig, itemSlot, gui);
        gui.setOnGlobalClick(event -> {
            event.setCancelled(true);
            initPane(player, plugin, customConfig, itemSlot, gui);
            gui.update();
        });
        gui.addPane(itemSlot);
        gui.show(player);
    } catch (IOException | InvalidConfigurationException e) {
        AdaptMessage.print("[" + Nodewar.getDimName() + "] Error while reading " + path + " file", AdaptMessage.prints.ERROR);
    }
}
Also used : FileConfiguration(org.bukkit.configuration.file.FileConfiguration) ChestGui(com.github.stefvanschie.inventoryframework.gui.type.ChestGui) GuiItem(com.github.stefvanschie.inventoryframework.gui.GuiItem) OutlinePane(com.github.stefvanschie.inventoryframework.pane.OutlinePane) StaticPane(com.github.stefvanschie.inventoryframework.pane.StaticPane) IOException(java.io.IOException) YamlConfiguration(org.bukkit.configuration.file.YamlConfiguration) ItemStack(org.bukkit.inventory.ItemStack) File(java.io.File) InvalidConfigurationException(org.bukkit.configuration.InvalidConfigurationException)

Example 2 with OutlinePane

use of com.github.stefvanschie.inventoryframework.pane.OutlinePane in project Nodewar by Rosstail.

the class WorldsGUIs method initGUI.

public static void initGUI(Player player, Nodewar plugin) {
    int invSize = 6;
    String display = "Worlds - Page 1";
    ChestGui gui = new ChestGui(invSize, AdaptMessage.playerMessage(player, display));
    PaginatedPane paginatedPane = new PaginatedPane(0, 0, 9, invSize);
    OutlinePane background = new OutlinePane(0, 0, 9, gui.getRows(), Pane.Priority.LOWEST);
    background.addItem(new GuiItem(new ItemStack(Material.BLACK_STAINED_GLASS_PANE)));
    background.setRepeat(true);
    gui.addPane(background);
    int page = 0;
    while (true) {
        StaticPane staticPane = initPane(player, plugin, gui, paginatedPane, page);
        paginatedPane.addPane(page, staticPane);
        if (staticPane.getItems().size() < 47) {
            // 9 * 5 lines + 2 buttons
            break;
        }
        page++;
    }
    gui.setOnGlobalClick(event -> {
        event.setCancelled(true);
    });
    gui.addPane(paginatedPane);
    gui.show(player);
}
Also used : ChestGui(com.github.stefvanschie.inventoryframework.gui.type.ChestGui) GuiItem(com.github.stefvanschie.inventoryframework.gui.GuiItem) PaginatedPane(com.github.stefvanschie.inventoryframework.pane.PaginatedPane) OutlinePane(com.github.stefvanschie.inventoryframework.pane.OutlinePane) StaticPane(com.github.stefvanschie.inventoryframework.pane.StaticPane) ItemStack(org.bukkit.inventory.ItemStack)

Example 3 with OutlinePane

use of com.github.stefvanschie.inventoryframework.pane.OutlinePane in project Nodewar by Rosstail.

the class PlayerAdminGUI method initGUI.

public static void initGUI(Player player, Nodewar plugin, Player target, ChestGui previousGui) {
    int invSize = 1;
    ChestGui gui = new ChestGui(invSize, AdaptMessage.playerMessage(target, target.getName()));
    StaticPane staticPane = initPane(player, plugin, gui, previousGui, target);
    OutlinePane background = new OutlinePane(0, 0, 9, gui.getRows(), Pane.Priority.LOWEST);
    background.addItem(new GuiItem(new ItemStack(Material.BLACK_STAINED_GLASS_PANE)));
    background.setRepeat(true);
    gui.addPane(background);
    gui.setOnGlobalClick(event -> {
        event.setCancelled(true);
    });
    gui.addPane(staticPane);
    gui.show(player);
}
Also used : ChestGui(com.github.stefvanschie.inventoryframework.gui.type.ChestGui) GuiItem(com.github.stefvanschie.inventoryframework.gui.GuiItem) OutlinePane(com.github.stefvanschie.inventoryframework.pane.OutlinePane) StaticPane(com.github.stefvanschie.inventoryframework.pane.StaticPane) ItemStack(org.bukkit.inventory.ItemStack)

Example 4 with OutlinePane

use of com.github.stefvanschie.inventoryframework.pane.OutlinePane in project Nodewar by Rosstail.

the class PlayerInfoGUI method initGUI.

public static void initGUI(Player player, fr.rosstail.nodewar.Nodewar plugin) {
    FileConfiguration customConfig = new YamlConfiguration();
    String path = "gui/playerInfoGUI.yml";
    File file = new File(plugin.getDataFolder(), path);
    try {
        customConfig.load(file);
        ChestGui gui = new ChestGui(customConfig.getInt("gui.size"), AdaptMessage.playerMessage(player, customConfig.getString("gui.display")));
        OutlinePane background = new OutlinePane(0, 0, 9, gui.getRows(), Pane.Priority.LOWEST);
        background.addItem(new GuiItem(new ItemStack(Material.BLACK_STAINED_GLASS_PANE)));
        background.setRepeat(true);
        gui.addPane(background);
        StaticPane itemSlot = new StaticPane(customConfig.getInt("gui.item-slot.x"), customConfig.getInt("gui.item-slot.y"), 9, gui.getRows(), Pane.Priority.HIGHEST);
        initPane(player, plugin, customConfig, itemSlot);
        gui.setOnGlobalClick(event -> {
            event.setCancelled(true);
            initPane(player, plugin, customConfig, itemSlot);
            gui.update();
        });
        gui.addPane(itemSlot);
        gui.show(player);
    } catch (IOException | InvalidConfigurationException e) {
        AdaptMessage.print("[" + Nodewar.getDimName() + "] Error while reading " + path + " file", AdaptMessage.prints.ERROR);
    }
}
Also used : FileConfiguration(org.bukkit.configuration.file.FileConfiguration) ChestGui(com.github.stefvanschie.inventoryframework.gui.type.ChestGui) GuiItem(com.github.stefvanschie.inventoryframework.gui.GuiItem) OutlinePane(com.github.stefvanschie.inventoryframework.pane.OutlinePane) StaticPane(com.github.stefvanschie.inventoryframework.pane.StaticPane) IOException(java.io.IOException) YamlConfiguration(org.bukkit.configuration.file.YamlConfiguration) ItemStack(org.bukkit.inventory.ItemStack) File(java.io.File) InvalidConfigurationException(org.bukkit.configuration.InvalidConfigurationException)

Example 5 with OutlinePane

use of com.github.stefvanschie.inventoryframework.pane.OutlinePane in project Nodewar by Rosstail.

the class WorldTerritoriesGUIs method initGUI.

public static void initGUI(Player player, Nodewar plugin, World world, ChestGui previousGui) {
    int invSize = 6;
    String display = world.getName() + "'s Territories - Page 1";
    ChestGui gui = new ChestGui(invSize, AdaptMessage.playerMessage(player, display));
    PaginatedPane paginatedPane = new PaginatedPane(0, 0, 9, invSize);
    OutlinePane background = new OutlinePane(0, 0, 9, gui.getRows(), Pane.Priority.LOWEST);
    background.addItem(new GuiItem(new ItemStack(Material.BLACK_STAINED_GLASS_PANE)));
    background.setRepeat(true);
    gui.addPane(background);
    int page = 0;
    while (true) {
        StaticPane staticPane = initPane(player, plugin, gui, previousGui, paginatedPane, world, page);
        paginatedPane.addPane(page, staticPane);
        if (staticPane.getItems().size() < 47) {
            // 9 * 5 lines + 2 buttons
            break;
        }
        page++;
    }
    gui.setOnGlobalClick(event -> {
        event.setCancelled(true);
    });
    gui.addPane(paginatedPane);
    gui.show(player);
}
Also used : ChestGui(com.github.stefvanschie.inventoryframework.gui.type.ChestGui) GuiItem(com.github.stefvanschie.inventoryframework.gui.GuiItem) PaginatedPane(com.github.stefvanschie.inventoryframework.pane.PaginatedPane) OutlinePane(com.github.stefvanschie.inventoryframework.pane.OutlinePane) StaticPane(com.github.stefvanschie.inventoryframework.pane.StaticPane) ItemStack(org.bukkit.inventory.ItemStack)

Aggregations

OutlinePane (com.github.stefvanschie.inventoryframework.pane.OutlinePane)23 GuiItem (com.github.stefvanschie.inventoryframework.gui.GuiItem)17 ChestGui (com.github.stefvanschie.inventoryframework.gui.type.ChestGui)17 ItemStack (org.bukkit.inventory.ItemStack)16 PaginatedPane (com.github.stefvanschie.inventoryframework.pane.PaginatedPane)9 StaticPane (com.github.stefvanschie.inventoryframework.pane.StaticPane)9 Material (org.bukkit.Material)7 Player (org.bukkit.entity.Player)7 YamlConfiguration (org.bukkit.configuration.file.YamlConfiguration)5 HumanEntity (org.bukkit.entity.HumanEntity)5 NotNull (org.jetbrains.annotations.NotNull)5 Main (com.gmail.stefvanschiedev.buildinggame.Main)4 MessageManager (com.gmail.stefvanschiedev.buildinggame.managers.messages.MessageManager)4 ChatColor (org.bukkit.ChatColor)4 Pane (com.github.stefvanschie.inventoryframework.pane.Pane)3 Priority (com.github.stefvanschie.inventoryframework.pane.Pane.Priority)3 SettingsManager (com.gmail.stefvanschiedev.buildinggame.managers.files.SettingsManager)3 MessageService (dte.employme.messages.service.MessageService)3 IOException (java.io.IOException)3 List (java.util.List)3