Сборки серверов

СливПлатные

Сейчас онлайн

  • ghieldbeef
  • rutube222222222
  • assssss
  • NInjasd9014
  • Bobrapipi
  • slobidka
  • Kaaunty
  • woarqume
  • sellingdope
  • SuperLikeMike
  • KITARU
  • authorized_usernameaa
  • DenPlayStar
  • Shining_God
  • zzpap
  • treant
  • Shhogoth
  • axser10
  • nilyr
  • LACIO
  • Xgamings11X
  • skquite

Помогите пж с созданием плагина Intelij Idea Bukkit (Paper)

  • Автор темыTanri
  • Дата начала
Tanri
В общем мне нужно сделать так, что бы предметы, которые в инвентаре (т.е. в эндер сундуке) нельзя было забрать (барьеры если быть точнее),
и кто знает мне нужно сделать предмет в эндер сундуке, в котором будет написано описании данной команды (в плагине), поэтому кто знает, как изменять названия предметов в инвентаре созданном и описание? И как думаете, где лучше хранить данные о вещей игрока созданном сундуке? (в config, или в бд?)
И кто знает, можно ли упростить код? Я если что про то, что бы не писать много предметов так, а написать все слоты для данных барьеров в 1 переменной:

ItemStack barrier = new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 1), barrier);

ItemStack barrier2 = new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 2), barrier2);

ItemStack barrier3= new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 3), barrier3);

ItemStack barrier4 = new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 4), barrier4);

ItemStack barrier5 = new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 5), barrier5);

ItemStack barrier6 = new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 6), barrier6);

Вот код если что мой:


package yt.tanr1.superec.command;

import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.jetbrains.annotations.NotNull;


public class SuperEc implements CommandExecutor {

@Override
public boolean onCommand(CommandSender sender, Command command, String Label, String [] args) {
if (!(sender instanceof Player)) return true;
if (args.length != 0) return false;

Player player = (Player) sender;
Inventory superec = Bukkit.createInventory(player, 26, ChatColor.DARK_GRAY + "Супер эндер сундук");





ItemStack barrier = new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 1), barrier);

ItemStack barrier2 = new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 2), barrier2);

ItemStack barrier3= new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 3), barrier3);

ItemStack barrier4 = new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 4), barrier4);

ItemStack barrier5 = new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 5), barrier5);

ItemStack barrier6 = new ItemStack(Material.BARRIER, 1);
superec.setItem(getIndex(1, 6), barrier6);

player.openInventory(superec);
return true;
}

private int getIndex(int row, int column) {
return (row - 1) * 9 + column - 1;
}
}

И кто знает, как сделать так, что бы данные о менюшке хранились в отдельном файле (тип как в config.yml) и что бы создавалась папка с конфигами при включении плагина
Так же кто знает, как сделать так, что бы при пермишионе определенном выдавался отдельный лвл слотов (например имея пермишион: superec.1.slots у игрока был 1 слот в данном сундуке, если допустим superec.2.slots, то было 2 слота и.т.д
Можете подсказать кто знает, как это сделать?
 
ВерхНиз