Поднятие уровня воды

Версия Minecraft
1.12.2

sk9zist :l

Исправился
981
18
157
Вообщем я кароче спал, и проснулся и меня озарило, может мне сделать мод на поднятие уровня воды в майнкрафт?
На самом деле я просто ведром заполнял воду на уровень выше в нашем выживании с другом и натолкнулся на эту идею.
Вообщем, нужно чтобы каждый игровой день (я пока что не знаю как лучше сделать так что пусть будет день, ну или 20 дней) будет подниматься уровень воды на один блок, но в территории чанков, прогруженных игроком, ну или:

Установить ограничение в количество блоков, в каком будет увеличиваться уровень воды рядом с игроком каждые 20 дней.
Вот собственно и вопрос. Можно ли как-то использовать /setblock из кода и делать проверку на то, что типо есть ли на +1 блок над водой блок, если есть то не ставить воду, если нет то ставить. А дальше майнкрафт сам заполнит водоёмы, я даже когда сам заполнял их достаточно просто с краёв заполнить там потом плавно всё остальное растечёться.
Но вот и что собственно мне первое пришло в голову, может сработать? Если да то как ставить блок по типу /setblock модом
 

sk9zist :l

Исправился
981
18
157

sk9zist :l

Исправился
981
18
157

sk9zist :l

Исправился
981
18
157
World#setBlock(x, y, z, Blocks.water)
world.setBlock(x, y, z, Blocks.FLOWING_WATER); 🌚
А, раз так, то может пора уже язык начать учить?
Ааа, ля, так ты мне говорил про использование и вызов одного метода world.setBlock.. прости, просто у меня сегодня голова болит.. Я думал что ты мне скажешь нужное мне. Вообщем-то я спрашивал про то как обнаружить именно блоки куда нужно ставить воду, ладно, не хотелось мне этого делать но придёться, составлю план:
1) как найти игрик воды около игрока, это будет текущий уровень воды.
2) как поставить блок над уровнем воды, тоесть типо как обнаружить что над блоками этого уровня воды есть или нет блоков чтобы поставить воду, и как ограничить это обнаружение чтобы оно весь мир не проверяло (думаю будет краш либо лаги)
3) тут уже незнаю, я ещё не до конца сам понял что и как надо делать, поэтому и спрашиваю у вас
 

sk9zist :l

Исправился
981
18
157
где замерзает лёд
Посмотрел, там много чего непонятно, но вроде там проверяеться если сломали киркой с шелковым касанием но это не важно. На счёт испарения, то там есть какой-то doesWaterVaporize тоесть испрарение и оно ставит пустой блок заместо льда, и ещё тут..
BlockIce.java:
            if (material.blocksMovement() || material.isLiquid())
            {
                worldIn.setBlockState(pos, Blocks.FLOWING_WATER.getDefaultState());
            }
оно ставит воду тут. Но мне непонятно всё равно.
Вот как например оно находит речку.. Ведь это всё сделано в блоке льда, значит это воздействует просто на весь лёд, а мне что, надо как-то хукаться в блок воды и добавлять метод поднятия уровня воды? Можно подругому как-то?
 
5,018
47
783
О круто, я в 2008 в вормикс играл, там такая же фича была
 

sk9zist :l

Исправился
981
18
157

sk9zist :l

Исправился
981
18
157

sk9zist :l

Исправился
981
18
157
рандомный чанк, достаются координаты, высота
Я думал, что getPrecipitationHeight было нахождением высоты, я правильно думал?
А можно не хукаться, а переписать всё просто себе? И где это писать в таком случае
 

sk9zist :l

Исправился
981
18
157
Сверху