if (!World.isWorldLoaded()) JsMacros.waitForEvent('ChunkLoad'); Chat.log('------------- tick event service started -----------'); const t20000Event = JsMacros.createCustomEvent('t20000'); t20000Event.registerEvent(); const t2000Event = JsMacros.createCustomEvent('t2000'); t2000Event.registerEvent(); const t200Event = JsMacros.createCustomEvent('t200'); t200Event.registerEvent(); const t40Event = JsMacros.createCustomEvent('t40'); t40Event.registerEvent(); const d2d = Hud.createDraw2D(); let infotext; d2d.setOnInit(JavaWrapper.methodToJava(() => { infotext = d2d.addText('', 0, d2d.getHeight() - 10, 0xFFFFFF, true); })); Hud.registerDraw2D(d2d); /* GlobalVars.putBoolean('autocraft',false); Chat.createCommandBuilder('autocraft').executes(JavaWrapper.methodToJavaAsync((e) => { Chat.log('--------AUTO-CRAFT-------------------'); Chat.log('interact with input container'); let event = JsMacros.waitForEvent('InteractBlock'); event.context.releaseLock(); let inputBlock = event.event.block.getBlockPos(); Chat.log(event.event.block.getBlockPos()+''); Chat.log('interact with output container'); event = JsMacros.waitForEvent('InteractBlock'); event.context.releaseLock(); Chat.log(event.event.block.getBlockPos()+''); let outputBlock = event.event.block.getBlockPos(); Chat.log('interact with crafting table'); event = JsMacros.waitForEvent('InteractBlock'); event.context.releaseLock(); let craftBlock = event.event.block.getBlockPos(); Chat.log(event.event.block.getBlockPos()+''); event = JsMacros.waitForEvent('OpenContainer'); event.context.releaseLock(); var recip = null; var found = false; for(let rec of event.event.inventory.getCraftableRecipes()){ recip = rec; found = true; } if(found == true){ Chat.log('Recipe selected: '+recip.getId()); Chat.log('To Make: '+recip.getOutput().getItemId()); GlobalVars.putBoolean('autocraft',true); GlobalVars.putString('autocraft_recipe',recip.getId()); GlobalVars.putString('autocraft_result',recip.getOutput().getItemId()); GlobalVars.putObject('autocraft_player',Player.getPlayer().getPos()); GlobalVars.putObject('autocraft_input',inputBlock); GlobalVars.putObject('autocraft_output',outputBlock); GlobalVars.putObject('autocraft_craft',craftBlock); } return true; })).register(); */ var counterA = 20000; var counterB = 2000; var counterC = 200; var counterD = 40; var dirtmode = 'normal'; const tickListener = JsMacros.on("Tick", JavaWrapper.methodToJava(() => { if(World.isWorldLoaded()){ counterA--; counterB--; counterC--; counterD--; const player = Player.getPlayer(); if(player.getPos().toVector(PositionCommon.createPos(983.9,74.5,11782.5)).getMagnitude() < 0.5){ if(player.getMainHand().getItemId() == 'minecraft:cocoa_beans'){ if(World.getBlock(984,76,11782).getId() == 'minecraft:air'){ player.interactBlock(984, 76, 11783, 2, false); } else if(World.getBlock(984,76,11782).getId() == 'minecraft:cocoa'){ //player.attack(984, 76, 11782, 4); }; } } else if(player.getPos().toVector(PositionCommon.createPos(-753.5,85,-2221.5)).getMagnitude() < 0.5){ if(player.getMainHand().getItemId() == 'minecraft:jungle_sapling'){ if(World.getBlock(-753,86,-2221).getId() == 'minecraft:air'){ player.interactBlock(-753, 85, -2221, 1, false); }; } } else if(player.getPos().toVector(PositionCommon.createPos(903.5,78,11760.5)).getMagnitude() < 0.3){ if(player.getMainHand().getItemId() == 'minecraft:acacia_sapling'){ if(World.getBlock(901,79,11760).getId() == 'minecraft:piston'){ if(World.getBlock(901,79,11757).getId() == 'minecraft:air'){ if(World.getBlock(901,78,11757).getId() == 'minecraft:air'){ player.interactBlock(901, 77, 11757, 1, false); }; }; }; } else if(player.getMainHand().getItemId() == 'minecraft:jungle_sapling'){ //if(World.getBlock(901,79,11760).getId() == 'minecraft:piston'){ //if(World.getBlock(901,79,11757).getId() == 'minecraft:air'){ if(World.getBlock(901,78,11757).getId() == 'minecraft:air'){ player.interactBlock(901, 77, 11757, 1, false); }; //}; //}; } else if(player.getMainHand().getItemId() == 'minecraft:birch_sapling'){ //if(World.getBlock(901,79,11760).getId() == 'minecraft:piston'){ //if(World.getBlock(901,79,11757).getId() == 'minecraft:air'){ if(World.getBlock(901,78,11757).getId() == 'minecraft:air'){ player.interactBlock(901, 77, 11757, 1, false); }; //}; //}; } else if(player.getMainHand().getItemId() == 'minecraft:spruce_sapling'){ //if(World.getBlock(901,79,11760).getId() == 'minecraft:piston'){ //if(World.getBlock(901,79,11757).getId() == 'minecraft:air'){ if(World.getBlock(901,78,11757).getId() == 'minecraft:air'){ player.interactBlock(901, 77, 11757, 1, false); }; if(World.getBlock(901,78,11757).getId() == 'minecraft:spruce_sapling'){ player.interactBlock(901, 77, 11757, 1, false); }; //}; //}; } //check for air one south of the tree column //else if(player.getMainHand().getItemId() == 'minecraft:oak_sapling'){ //if(World.getBlock(901,79,11760).getId() == 'minecraft:piston'){ //if(World.getBlock(901,79,11757).getId() == 'minecraft:air'){ // if(World.getBlock(901,78,11757).getId() == 'minecraft:air'){ // player.interactBlock(901, 77, 11757, 1, false); // }; // if(World.getBlock(901,78,11757).getId() == 'minecraft:spruce_sapling'){ // player.interactBlock(901, 77, 11757, 1, false); // }; //}; //}; //} } //else if(player.getPos().toVector(PositionCommon.createPos(889.6,78,11800.5)).getMagnitude() < 0.5){ else if(player.getPos().toVector(PositionCommon.createPos(888.3,77,11800.5)).getMagnitude() < 0.5){ if(dirtmode == 'normal'){ if(player.getMainHand().getItemId() == 'minecraft:azalea'){ if(World.getBlock(890,79,11799).getId() == 'minecraft:air'){ player.interactBlock(890, 78, 11799, 1, false); const secsofday = (Math.round(Time.time()/1000))%(60*60*24); if((secsofday > 3300)&&(secsofday < 3600)){ player.interactBlock(888, 77, 11800, 1, false); //Chat.log(secsofday); Chat.say('#goto 882 70 11807'); dirtmode = 'down1'; } if((secsofday > (43200+3300))&&(secsofday < (43200+3600))){ player.interactBlock(888, 77, 11800, 1, false); //Chat.log(secsofday); Chat.say('#goto 882 70 11807'); dirtmode = 'down1'; } }; } } if(dirtmode == 'isdown'){ player.interactBlock(888, 77, 11800, 1, false); dirtmode = 'isdown2'; } } else if(player.getPos().toVector(PositionCommon.createPos(882,70,11807)).getMagnitude() < 1.5){ if(dirtmode == 'down1'){ player.interactBlock(883, 72, 11807, 1, false); dirtmode = 'down2'; Chat.say('#goto 855 70 11801'); } } else if(player.getPos().toVector(PositionCommon.createPos(855.6,70,11801.6)).getMagnitude() < 1.5){ if(dirtmode == 'down2'){ player.interactBlock(855, 72, 11800, 1, false); dirtmode = 'isdown'; Chat.say('#goto 888.5 77 11800.5'); } } else if(player.getPos().toVector(PositionCommon.createPos(880.7,73,11760.5)).getMagnitude() < 0.5){ if(player.getMainHand().getItemId() == 'minecraft:mangrove_propagule'){ if(World.getBlock(879,78,11761).getId() == 'minecraft:air'){ player.interactBlock(879, 77, 11761, 1, false); }; } } const detected = GlobalVars.getString('detected'); if(counterA%20==0){ if(detected && detected == 'autocraft'){ infotext?.setText('autocraft'); }else if(detected && detected != 'none' && detected != 'trade'){ infotext?.setText(detected+' '+(counterB/20)); }else if(detected && detected == 'trade'){ infotext?.setText('trade '+GlobalVars.getString('trade_item')+' '+GlobalVars.getString('trade_msg')); }else{ infotext?.setText(''); } } if(counterA == 0){ //t20000Event.trigger(); counterA=20000; if(detected && detected == 'none'){ counterA=200; }else{ counterA=20000; } } if(counterB == 0){ t2000Event.trigger(); if(detected && detected == 'none'){ counterB=200; }else{ counterB=2000; } } if(counterC == 0){ t200Event.trigger(); counterC=100; } if(counterD == 0){ t40Event.trigger(); counterD=40; } } /*const zTarget = GlobalVars.getInt('zTarget'); if(zTarget){ const currZ = Player.getPlayer().getZ() + 0.5; if(Math.abs(currZ-zTarget) > 0.4){ if(currZ-zTarget < 0){ Player.clearInputs(); Player.addInput(Player.createPlayerInput(0,1,90)); }else{ Player.clearInputs(); Player.addInput(Player.createPlayerInput(0,-1,90)); } }else{ GlobalVars.remove('zTarget'); GlobalVars.putBoolean('zTarget_reached',true); } }*/ })); event.stopListener = JavaWrapper.methodToJava(() => { JsMacros.off(tickListener); Hud.unregisterDraw2D(d2d); Chat.log('------------- tick event service stopped -----------'); //Chat.unregisterCommand('feed'); return Client; });