272 lines
8.9 KiB
JavaScript
272 lines
8.9 KiB
JavaScript
|
|
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;
|
|
});
|