Повторная генерация / ре-генерация в существющих биомах/чанках

Версия Minecraft
1.7.10
API
Forge

VeniVidiVici

Санта Барбарис
326
15
198
Нужно спавнить в биомах некоторые блоки (на понятном примере - палки из тфк). Я написал новый генератор, наследуемый от IWorldGenerator, зарегистрировал - всё хорошо работает. Но вопрос, как можно реализовать процесс повторного вызова этого генератора для биома/чанка спустя некоторое время или при соблюдении условия? Какие есть пути решения этого дела, и как вообще корректно вызвать вручную мой класс генерации? Необходимо выполнять эту функцию для любых биомов, без создания "специальных".
 
Решение
Запиши в чанк данные - время последней генерации твоих блоков. В ивенте загрузки чанка проверяй что прошло достаточно времени и вызывай свой генератор ручками.
вызывай свой генератор ручками
как вообще корректно вызвать вручную мой класс генерации?

Помнится был мод, регенирирующий новые руды из добавленных модоы, в уже существующем мире
Название не подскажешь?)
 
Вызвать у своего объекта IWorldGenerator метод generate :unsure:
Пример есть в GameRegistry.generateWorld, только там вызываются все генераторы.
Блин, точно, спасибо

Запиши в чанк данные
Посоветуй, пожалуйста, как это лучше сделать? Ивенты загрузки и выгрузки помню. Или может сходу тред нужный подскажешь, я пока не нашёл
---
И сразу вдогонку, есть ли смысл в WSD хранить единый стак чанков со сроком годности обновления, или как-то в них самих писать надо?
 
ChunkDataEvent, там в таг пишешь. Странно что этот таг не добавили как поле в классе Chunk.
Ну, тогда наверное нужно юзать WSD, там хранить мапу <ChunkCoordinates, NBTTagCompound>, в генераторе добавлять в мапу данные, а в ChunkDataEvent уже из мапы сохранять в чанк. Можно конечно сейвить прям в WSD, но мне кажется правильнее будет напрямую в чанк писать.
 
Назад
Сверху