Уникальный предмет, который спавнится всего один раз в мире

Версия Minecraft
1.20.1
API
Forge
43
5
1
Есть ли возможность сделать так, чтобы предмет спавнился всего один раз в каком-нибудь из сундуков? Сложно ли это в реализации?
 
Решение
Крепостей может быть много, но портал обычно генерируется только один.
Шта? Сколько крепостей, столько и порталов, и каждый из них можно активировать.

Очень кривой пример
Действительно очень кривой, ибо работать будет только до перезапуска игры (сервера).

Логику понял, идея хорошая
Используй WorldSavedData.
Есть ли возможность сделать так, чтобы предмет спавнился всего один раз в каком-нибудь из сундуков? Сложно ли это в реализации?
Можно. Можно реализовать по принципу структуры Stronghold. Крепостей может быть много, но портал обычно генерируется только один.
 
Очень кривой пример
Модифицируй его как угодно если нужно и всё
Java:
    private static final ResourceLocation CHEST_LOOT_TABLE = new ResourceLocation("minecraft", "chests/simple_dungeon");
    private static boolean itemSpawned = false;

    @SubscribeEvent
    public static void tableLoot(LootTableLoadEvent event) {
        if (event.getName().equals(CHEST_LOOT_TABLE) && !itemSpawned) {
            event.getTable().addPool(new LootPool.Builder().addEntry(ItemLootEntry.builder(new ItemStack(**Твой предмет**)).weight(1).build()).build());
            itemSpawned = true;
        }
    }
 
Крепостей может быть много, но портал обычно генерируется только один.
Шта? Сколько крепостей, столько и порталов, и каждый из них можно активировать.

Очень кривой пример
Действительно очень кривой, ибо работать будет только до перезапуска игры (сервера).

Логику понял, идея хорошая
Используй WorldSavedData.
 
Действительно очень кривой, ибо работать будет только до перезапуска игры (сервера)
Ну, я как бы это и написал)
Человек может уже дальше сам дописать логику сохранения)
 
Назад
Сверху