plugins
This commit is contained in:
@ -8,81 +8,81 @@ const customerSlots = [5, 6, 7, 8, 14, 15, 16, 17, 23, 24, 25, 26];
|
||||
|
||||
|
||||
function findChestBySign(bot, text){
|
||||
let sign = bot.bot.findBlock({
|
||||
useExtraInfo: true,
|
||||
maxDistance: 32,
|
||||
matching: (block)=> {
|
||||
if(block.name.includes('sign') && block.signText.includes(text)){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
});
|
||||
let sign = bot.bot.findBlock({
|
||||
useExtraInfo: true,
|
||||
maxDistance: 32,
|
||||
matching: (block)=> {
|
||||
if(block.name.includes('sign') && block.signText.includes(text)){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
return bot.bot.findBlock({
|
||||
point: sign.position,
|
||||
// maxDistance: 1,
|
||||
useExtraInfo: true,
|
||||
matching: block => block.name === 'chest'
|
||||
});
|
||||
return bot.bot.findBlock({
|
||||
point: sign.position,
|
||||
// maxDistance: 1,
|
||||
useExtraInfo: true,
|
||||
matching: block => block.name === 'chest'
|
||||
});
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
'.trade': {
|
||||
desc: 'Bot will take trade requests',
|
||||
async function(from){
|
||||
/*
|
||||
todo
|
||||
'.trade': {
|
||||
desc: 'Bot will take trade requests',
|
||||
async function(from){
|
||||
/*
|
||||
todo
|
||||
|
||||
* Do... something if the users chest is full
|
||||
* Do... something if the users chest is full
|
||||
|
||||
*/
|
||||
*/
|
||||
|
||||
// Make the user has a chest then can add too.
|
||||
let chestBlock = findChestBySign(this, from);
|
||||
if(!chestBlock) return this.whisper(from, `You aren't allowed to trade with me...`);
|
||||
// Make the user has a chest then can add too.
|
||||
let chestBlock = findChestBySign(this, from);
|
||||
if(!chestBlock) return this.whisper(from, `You aren't allowed to trade with me...`);
|
||||
|
||||
await this.say('/trade accept');
|
||||
let window = await this.once('windowOpen');
|
||||
await this.say('/trade accept');
|
||||
let window = await this.once('windowOpen');
|
||||
|
||||
// If the process is taking to long, just stop
|
||||
let timeoutCheck = setTimeout(()=>{
|
||||
this.bot.closeWindow('window');
|
||||
this.bot.removeAllListeners('windowOpen');
|
||||
this.whisper(from, `I have things to do, I cant wait on you all day!`)
|
||||
}, 120000);
|
||||
// If the process is taking to long, just stop
|
||||
let timeoutCheck = setTimeout(()=>{
|
||||
this.bot.closeWindow('window');
|
||||
this.bot.removeAllListeners('windowOpen');
|
||||
this.whisper(from, `I have things to do, I cant wait on you all day!`)
|
||||
}, 120000);
|
||||
|
||||
// Check to see if the remote user has agreed to the trade.
|
||||
let confirmationCheck = setInterval(async ()=>{
|
||||
if(window.containerItems().filter(item => item?.slot == 53)[0].name == 'lime_dye'){
|
||||
this.bot.moveSlotItem(37, 37);
|
||||
}
|
||||
}, 500);
|
||||
// Check to see if the remote user has agreed to the trade.
|
||||
let confirmationCheck = setInterval(async ()=>{
|
||||
if(window.containerItems().filter(item => item?.slot == 53)[0].name == 'lime_dye'){
|
||||
this.bot.moveSlotItem(37, 37);
|
||||
}
|
||||
}, 500);
|
||||
|
||||
// Clean up when the trade is done
|
||||
await this.once('windowClose');
|
||||
clearInterval(confirmationCheck);
|
||||
// Clean up when the trade is done
|
||||
await this.once('windowClose');
|
||||
clearInterval(confirmationCheck);
|
||||
|
||||
// If the trade took so long it timed out, just kill the whole thing.
|
||||
if(timeoutCheck._destroyed) return;
|
||||
clearTimeout(timeoutCheck)
|
||||
// If the trade took so long it timed out, just kill the whole thing.
|
||||
if(timeoutCheck._destroyed) return;
|
||||
clearTimeout(timeoutCheck)
|
||||
|
||||
// Give MC a moment
|
||||
// await sleep(1000);
|
||||
// Give MC a moment
|
||||
// await sleep(1000);
|
||||
|
||||
let goBack = await this.goToReturn({where: chestBlock, reTry: true})
|
||||
let goBack = await this.goToReturn({where: chestBlock, reTry: true})
|
||||
|
||||
let isPutAway = await this.dumpToChest(chestBlock)
|
||||
let isPutAway = await this.dumpToChest(chestBlock)
|
||||
|
||||
await goBack();
|
||||
await goBack();
|
||||
|
||||
await this.whisper(from, `I put ${isPutAway ? 'all' : 'some'} items in your chest.`);
|
||||
}
|
||||
},
|
||||
'test': {
|
||||
desc: 'go away',
|
||||
allowed: ['useless666'],
|
||||
async function(from){
|
||||
let chestBlock = findChestBySign(this, from);
|
||||
}
|
||||
}
|
||||
await this.whisper(from, `I put ${isPutAway ? 'all' : 'some'} items in your chest.`);
|
||||
}
|
||||
},
|
||||
'test': {
|
||||
desc: 'go away',
|
||||
allowed: ['useless666'],
|
||||
async function(from){
|
||||
let chestBlock = findChestBySign(this, from);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user