Для реализации кастомных титулов для каждого игрока в Minecraft, вы можете использовать систему хранения данных, например, с помощью YAML-файлов или базы данных. Вот пример, как можно организовать структуру данных и меню для кастомных титулов.
### Пример структуры данных в YAML
players:
player123:
titles:
- "Первый титул"
player321:
titles:
- "Первый титул"
- "Второй титул"
- "Третий титул"
### Пример Java-кода для открытия меню
import org.bukkit.entity.Player;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
public class TitleMenu {
public void openTitleMenu(Player player) {
// Получаем титулы игрока из хранилища данных
List<String> titles = getTitlesForPlayer(player.getName());
// Создаем инвентарь для меню
Inventory inventory = Bukkit.createInventory(null, 9, "Ваши титулы");
// Заполняем инвентарь титулами
for (String title : titles) {
ItemStack item = createTitleItem(title);
inventory.addItem(item);
}
// Открываем инвентарь для игрока
player.openInventory(inventory);
}
private List<String> getTitlesForPlayer(String playerName) {
// Здесь должна быть логика получения титулов из хранилища данных
// Например, чтение из YAML-файла
return new ArrayList<>(); // Верните список титулов
}
private ItemStack createTitleItem(String title) {
// Создание предмета для титула
ItemStack item = new ItemStack(Material.PAPER); // Пример материала
ItemMeta meta = item.getItemMeta();
meta.setDisplayName(title);
item.setItemMeta(meta);
return item;
}
}
### Примечания
1. Вам нужно будет реализовать логику для загрузки и сохранения данных титулов в YAML-файл или другую систему хранения.
2. Не забудьте обработать события, когда игрок выбирает титул из меню.
3. Убедитесь, что у вас есть необходимые библиотеки для работы с Bukkit или Spigot.
Этот пример даст вам общее представление о том, как можно реализовать меню кастомных титулов для каждого игрока.