[➤](#1302909605105500170 message)
Startup script, requires EntityJS.
Auto plant on fall, should be performant since slow things are executed in different tick.
const BushBlock = Java.loadClass('net.minecraft.world.level.block.BushBlock')
const BlockHitResult = Java.loadClass('net.minecraft.world.phys.BlockHitResult');
function auto_plant(entity) {
if(entity.level.isClientSide()) return;
const {item} = entity, {item: {block}} = item;
if(!block || !(block instanceof BushBlock)) return;
const {server} = entity;
server.scheduleInTicks(Utils.random.nextInt(0, 3), () => {
const player = server.players.getFirst();
if(!player) return;
const use_result = item.useOn(
new UseOnContext(
player, 'main_hand',
new BlockHitResult(
null, 'up',
entity.block.pos, false
)
)
);
if(use_result != 'CONSUME') return;
entity.discard();
entity.playSound('block.grass.place', 0.3, 1.06);
})
}
EntityJSEvents.modifyEntity(e => {
e.modify('minecraft:item', modifyBuilder => modifyBuilder.onFall(context => auto_plant(context.entity)))
})