mirror of
https://github.com/BentoBoxWorld/BentoBox.git
synced 2024-10-03 00:57:42 +02:00
Continued working on the SettingsPanel. Did minor fixes in PanelItemBuilder
This commit is contained in:
parent
c6c7e0b4ee
commit
f648c936ad
@ -9,6 +9,7 @@ import org.bukkit.inventory.ItemStack;
|
|||||||
import us.tastybento.bskyblock.api.commands.User;
|
import us.tastybento.bskyblock.api.commands.User;
|
||||||
import us.tastybento.bskyblock.api.panels.PanelItem;
|
import us.tastybento.bskyblock.api.panels.PanelItem;
|
||||||
import us.tastybento.bskyblock.api.panels.builders.PanelItemBuilder;
|
import us.tastybento.bskyblock.api.panels.builders.PanelItemBuilder;
|
||||||
|
import us.tastybento.bskyblock.managers.RanksManager;
|
||||||
|
|
||||||
public class Flag implements Comparable<Flag> {
|
public class Flag implements Comparable<Flag> {
|
||||||
|
|
||||||
@ -108,7 +109,10 @@ public class Flag implements Comparable<Flag> {
|
|||||||
public PanelItem toPanelItem(User user) {
|
public PanelItem toPanelItem(User user) {
|
||||||
return new PanelItemBuilder()
|
return new PanelItemBuilder()
|
||||||
.icon(new ItemStack(icon))
|
.icon(new ItemStack(icon))
|
||||||
.name(user.getTranslation("protection.flags." + id))
|
.name(user.getTranslation("protection.panel.flag-item.name-layout", "[name]", user.getTranslation("protection.flags." + id + ".name")))
|
||||||
|
.description(user.getTranslation("protection.panel.flag-item.description-layout",
|
||||||
|
"[description]", user.getTranslation("protection.flags." + id + ".description"),
|
||||||
|
"[rank]", "Owner"))
|
||||||
.clickHandler((clicker, click) -> {
|
.clickHandler((clicker, click) -> {
|
||||||
clicker.sendRawMessage("You clicked on : " + id);
|
clicker.sendRawMessage("You clicked on : " + id);
|
||||||
return true;
|
return true;
|
||||||
|
@ -31,7 +31,8 @@ public class Panel {
|
|||||||
inventory = Bukkit.createInventory(null, size, name);
|
inventory = Bukkit.createInventory(null, size, name);
|
||||||
// Fill the inventory and return
|
// Fill the inventory and return
|
||||||
for (Map.Entry<Integer, PanelItem> en: items.entrySet()) {
|
for (Map.Entry<Integer, PanelItem> en: items.entrySet()) {
|
||||||
inventory.setItem(en.getKey(), en.getValue().getItem());
|
//TODO allow multi-paging
|
||||||
|
if (en.getKey() < 54) inventory.setItem(en.getKey(), en.getValue().getItem());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
inventory = Bukkit.createInventory(null, 9, name);
|
inventory = Bukkit.createInventory(null, 9, name);
|
||||||
|
@ -1,9 +1,6 @@
|
|||||||
package us.tastybento.bskyblock.api.panels.builders;
|
package us.tastybento.bskyblock.api.panels.builders;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.UUID;
|
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
@ -46,11 +43,11 @@ public class PanelItemBuilder {
|
|||||||
*/
|
*/
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
public PanelItemBuilder icon(String playerName) {
|
public PanelItemBuilder icon(String playerName) {
|
||||||
ItemStack item = new ItemStack(Material.SKULL_ITEM,1,(short)3);
|
ItemStack item = new ItemStack(Material.SKULL_ITEM, 1, (short) 3);
|
||||||
SkullMeta meta = (SkullMeta)item.getItemMeta();
|
SkullMeta meta = (SkullMeta)item.getItemMeta();
|
||||||
// This is deprecated, but apparently the only way to make it work right now
|
// This is deprecated, but apparently the only way to make it work right now
|
||||||
meta.setOwner(playerName);
|
meta.setOwner(playerName);
|
||||||
item.setItemMeta( meta );
|
item.setItemMeta(meta);
|
||||||
this.icon = item;
|
this.icon = item;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@ -90,7 +87,9 @@ public class PanelItemBuilder {
|
|||||||
* @return PanelItemBuilder
|
* @return PanelItemBuilder
|
||||||
*/
|
*/
|
||||||
public PanelItemBuilder description(String description) {
|
public PanelItemBuilder description(String description) {
|
||||||
this.description.add(description);
|
for (String line : description.split("\n")) {
|
||||||
|
this.description.add(line);
|
||||||
|
}
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -30,6 +30,17 @@ import us.tastybento.bskyblock.listeners.flags.TeleportationListener;
|
|||||||
|
|
||||||
public class Flags {
|
public class Flags {
|
||||||
|
|
||||||
|
// TODO: add HURT_VILLAGERS
|
||||||
|
// TODO: add TRAPDOOR
|
||||||
|
// TODO: add DYEING sheeps
|
||||||
|
// TODO: add ELYTRA
|
||||||
|
// TODO: add FISHING
|
||||||
|
// TODO: rename HURT_MOBS to HURT_ANIMALS
|
||||||
|
// TODO: add INTERACT_TAMED
|
||||||
|
// TODO: split LEVER_BUTTON into BUTTON and LEVER
|
||||||
|
// TODO: add KEEP_INVENTORY
|
||||||
|
// TODO: rename MOB_SPAWN to ANIMAL_SPAWN
|
||||||
|
|
||||||
public static final Flag BREAK_BLOCKS = new FlagBuilder().id("BREAK_BLOCKS").icon(Material.STONE).listener(new BreakBlocksListener()).build();
|
public static final Flag BREAK_BLOCKS = new FlagBuilder().id("BREAK_BLOCKS").icon(Material.STONE).listener(new BreakBlocksListener()).build();
|
||||||
public static final Flag PLACE_BLOCKS = new FlagBuilder().id("PLACE_BLOCKS").icon(Material.BEDROCK).listener(new PlaceBlocksListener()).build();
|
public static final Flag PLACE_BLOCKS = new FlagBuilder().id("PLACE_BLOCKS").icon(Material.BEDROCK).listener(new PlaceBlocksListener()).build();
|
||||||
|
|
||||||
|
@ -5,6 +5,7 @@ import us.tastybento.bskyblock.api.commands.User;
|
|||||||
import us.tastybento.bskyblock.api.flags.Flag;
|
import us.tastybento.bskyblock.api.flags.Flag;
|
||||||
import us.tastybento.bskyblock.api.panels.PanelItem;
|
import us.tastybento.bskyblock.api.panels.PanelItem;
|
||||||
import us.tastybento.bskyblock.api.panels.builders.PanelBuilder;
|
import us.tastybento.bskyblock.api.panels.builders.PanelBuilder;
|
||||||
|
import us.tastybento.bskyblock.api.panels.builders.PanelItemBuilder;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Poslovitch
|
* @author Poslovitch
|
||||||
@ -17,7 +18,14 @@ public class SettingsPanel {
|
|||||||
*/
|
*/
|
||||||
public static void openPanel(User user) {
|
public static void openPanel(User user) {
|
||||||
PanelBuilder panelBuilder = new PanelBuilder()
|
PanelBuilder panelBuilder = new PanelBuilder()
|
||||||
.setName(user.getTranslation("panels.settings.title"));
|
.setName(user.getTranslation("protection.panel.title"));
|
||||||
|
|
||||||
|
PanelItem help = new PanelItemBuilder()
|
||||||
|
.name(user.getTranslation("protection.panel.help-item.name"))
|
||||||
|
.icon("crashdummie99") // Question marks
|
||||||
|
.build();
|
||||||
|
|
||||||
|
panelBuilder.addItem(8, help);
|
||||||
|
|
||||||
for (Flag flag : BSkyBlock.getInstance().getFlagsManager().getFlags()) {
|
for (Flag flag : BSkyBlock.getInstance().getFlagsManager().getFlags()) {
|
||||||
PanelItem flagIcon = flag.toPanelItem(user);
|
PanelItem flagIcon = flag.toPanelItem(user);
|
||||||
@ -26,6 +34,4 @@ public class SettingsPanel {
|
|||||||
|
|
||||||
panelBuilder.build().open(user);
|
panelBuilder.build().open(user);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user