feat: permission message and items

This commit is contained in:
ineanto 2023-07-10 17:38:03 +02:00
parent 92f88a1b92
commit 00168c03a7
5 changed files with 19 additions and 15 deletions

View file

@ -8,6 +8,8 @@ import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import xyz.atnrch.nicko.i18n.I18N;
import xyz.atnrch.nicko.i18n.I18NDict;
public class NickoCommand implements CommandExecutor {
private String helpMessage = "§cNicko §8§o[{version}] §f- §2Help:\n" +
@ -17,7 +19,7 @@ public class NickoCommand implements CommandExecutor {
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
if (sender instanceof Player) {
Player player = (Player) sender;
final Player player = (Player) sender;
if (args.length >= 1) {
switch (args[0]) {
case "debug":
@ -33,7 +35,12 @@ public class NickoCommand implements CommandExecutor {
return false;
}
if(player.isOp() || player.hasPermission("nicko.use") || player.hasPermission("nicko.*")) {
new HomeGUI(player).open();
} else {
final I18N i18N = new I18N(player);
player.sendMessage(i18N.translate(I18NDict.Error.PERMISSION));
}
return false;
}

View file

@ -18,11 +18,11 @@ public class HomeGUI {
public HomeGUI(Player player) {
final String[] dynamicStructure = new String[]{
"# # # # # # # # #",
"A # # N B S # # #",
"E P # # # # # # R"};
"# # # # # # # # P",
"# # # N B S # # #",
"E A # # # # # # R"};
if (!player.hasPermission("nicko.admin") || !player.isOp()) {
if (!player.isOp() || !player.hasPermission("nicko.admin")) {
dynamicStructure[2] = dynamicStructure[2].replace("A", "#");
}

View file

@ -9,7 +9,7 @@ import xyz.xenondevs.invui.item.impl.SuppliedItem;
public class ChangeBothItem extends SuppliedItem {
public ChangeBothItem() {
super(() -> {
final ItemBuilder builder = new ItemBuilder(Material.END_PORTAL_FRAME);
final ItemBuilder builder = new ItemBuilder(Material.TOTEM_OF_UNDYING);
builder.setDisplayName("§6Skin §fand §6name §fchange");
builder.addLoreLines("§7Will open a GUI to change both your name and your skin.");
return builder;

View file

@ -1,21 +1,17 @@
package xyz.atnrch.nicko.gui.items.home;
import xyz.atnrch.nicko.gui.AdminGUI;
import org.bukkit.Material;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.event.inventory.ClickType;
import org.bukkit.inventory.ItemFlag;
import xyz.atnrch.nicko.gui.AdminGUI;
import xyz.xenondevs.invui.item.builder.ItemBuilder;
import xyz.xenondevs.invui.item.impl.SuppliedItem;
public class AdminAccessItem extends SuppliedItem {
public AdminAccessItem() {
super(() -> {
final ItemBuilder builder = new ItemBuilder(Material.COMMAND_BLOCK);
builder.addEnchantment(Enchantment.DAMAGE_ALL, 1, false);
builder.addItemFlags(ItemFlag.HIDE_ENCHANTS);
builder.setDisplayName("§cAdministration panel");
builder.addLoreLines("§7Configure and and manage Nicko.");
final ItemBuilder builder = new ItemBuilder(Material.COMMAND_BLOCK_MINECART);
builder.setDisplayName("Administration panel");
builder.addLoreLines("§7Configure and manage Nicko.");
return builder;
}, click -> {
final ClickType clickType = click.getClickType();

View file

@ -45,6 +45,7 @@ public class I18NDict {
public static class Error {
public static final String GENERIC = "error.generic";
public static final String PERMISSION = "error.permission";
public static final String PLAYER_OFFLINE = "error.offline";
public static final String CACHE = "error.cache";
public static final String MOJANG_NAME = "error.mojang_name";