mirror of
https://github.com/ChomeNS/chomens-bot-mc.git
synced 2024-11-14 10:44:55 -05:00
upgrade console layout + usage upgrade
it took real shit ages to do this shit
This commit is contained in:
parent
01475e3085
commit
441abf7264
5 changed files with 59 additions and 30 deletions
|
@ -53,10 +53,22 @@ module.exports = {
|
|||
if (command.alias.toString() !== '') {
|
||||
alias = command.alias.join(', ');
|
||||
}
|
||||
|
||||
const usage = [];
|
||||
if (typeof command.usage === 'string') {
|
||||
usage.push({text: `${prefix}${command.name} `, color: 'gold'});
|
||||
usage.push({text: command.usage, color: 'aqua'});
|
||||
} else {
|
||||
command.usage.forEach((value) => {
|
||||
usage.push({text: `${prefix}${command.name} `, color: 'gold'});
|
||||
usage.push({text: `${value}\n`, color: 'aqua'});
|
||||
});
|
||||
}
|
||||
|
||||
bot.tellraw('@a', [{text: prefix + command.name, color: 'gold'}, {text: ` (${alias})`, color: 'white'}, {text: ' - ', color: 'gray'}, {text: command.description, color: 'gray'}]);
|
||||
bot.tellraw('@a', [{text: 'Trust level: ', color: 'green'}, {text: command.trusted, color: 'yellow'}]);
|
||||
bot.tellraw('@a', [{text: 'Supported on Discord: ', color: 'green'}, {text: discordSupported, color: 'gold'}]);
|
||||
bot.tellraw('@a', [{text: prefix + command.name, color: 'gold'}, {text: ' ' + command.usage, color: 'aqua'}]);
|
||||
bot.tellraw('@a', usage);
|
||||
}
|
||||
|
||||
if (command.name === args[0]) run();
|
||||
|
|
27
index.js
27
index.js
|
@ -23,12 +23,12 @@ const {VM} = require('vm2');
|
|||
const randomstring = require('randomstring');
|
||||
const mineflayer = require('mineflayer');
|
||||
// readline > fix on console.log
|
||||
const log = console.log;
|
||||
console.log = function() {
|
||||
rl.output.write('\x1b[2K\r');
|
||||
log.apply(console, Array.prototype.slice.call(arguments));
|
||||
rl._refreshLine();
|
||||
};
|
||||
// const log = console.log;
|
||||
// console.log = function() {
|
||||
// rl.output.write('\x1b[2K\r');
|
||||
// log.apply(console, Array.prototype.slice.call(arguments));
|
||||
// rl._refreshLine();
|
||||
// };
|
||||
|
||||
// Load discord.js
|
||||
const {
|
||||
|
@ -76,7 +76,7 @@ async function botThings() {
|
|||
/**
|
||||
* Main bot function
|
||||
*/
|
||||
function main() {
|
||||
async function main() {
|
||||
const channel = dcclient.channels.cache.get(config.discord.servers[process.argv[2]]);
|
||||
|
||||
module.exports = bot;
|
||||
|
@ -85,7 +85,7 @@ function main() {
|
|||
bot.getplayerusername = {};
|
||||
|
||||
bot.once('end', (reason, event) => {
|
||||
console.log(
|
||||
bot.console.info(
|
||||
`Disconnected from ${bot.options.host} (${event} event): ${util.inspect(reason)}`,
|
||||
);
|
||||
channel.send(`Disconnected: \`${util.inspect(reason)}\``);
|
||||
|
@ -101,7 +101,7 @@ function main() {
|
|||
) timeout = 1000 * 7;
|
||||
}
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
bot.console.error(e);
|
||||
}
|
||||
|
||||
setTimeout(() => {
|
||||
|
@ -111,15 +111,18 @@ function main() {
|
|||
}, timeout);
|
||||
});
|
||||
|
||||
console.log(`Connecting to: ${bot.options.host}:${bot.options.port}...`);
|
||||
await sleep(1000);
|
||||
|
||||
bot.console.info(`Connecting to: ${bot.options.host}:${bot.options.port}...`);
|
||||
channel.send(`Connecting to: \`${bot.options.host}:${bot.options.port}\`...`);
|
||||
console.log(bot._client);
|
||||
bot._client.on('login', async function(data) {
|
||||
bot.entityId = data.entityId;
|
||||
bot.uuid = bot._client.uuid;
|
||||
bot.username = bot._client.username;
|
||||
chatMessage = require('prismarine-chat')(bot.version);
|
||||
const mcData = require('minecraft-data')(bot.version);
|
||||
console.log(
|
||||
bot.console.info(
|
||||
`Successfully logged in to: ${bot.options.host}:${bot.options.port}`,
|
||||
);
|
||||
channel.send(
|
||||
|
@ -208,7 +211,7 @@ function main() {
|
|||
bot._client.on('error', function() {});
|
||||
|
||||
process.on('uncaughtException', (error) => {
|
||||
console.log('uncaught ' + util.inspect(error));
|
||||
console.error('uncaught ' + util.inspect(error));
|
||||
channel.send('uncaught ```\n' + util.inspect(error) + '\n```');
|
||||
bot.emit('end', 'uncaughtException', 'process: uncaughtException');
|
||||
});
|
||||
|
|
|
@ -17,7 +17,7 @@ function inject(bot) {
|
|||
bot.write('chat', {message: bot.chatQueue[0].substring(0, 256)});
|
||||
bot.chatQueue.shift();
|
||||
} catch (e) {
|
||||
console.log(e.message);
|
||||
bot.console.error(e);
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
|
|
|
@ -1,20 +1,35 @@
|
|||
/* eslint-disable max-len */
|
||||
/* eslint-disable prefer-rest-params */
|
||||
const moment = require('moment-timezone');
|
||||
|
||||
function inject(bot, dcclient, config, rl) {
|
||||
if (!config.console) return;
|
||||
|
||||
const chatMessage = require('prismarine-chat')(bot.version);
|
||||
|
||||
function prefix(prefix, _message) {
|
||||
const message = `[${moment().format('HH:mm:ss')} ${prefix}§r] [${bot.options.host}] ${_message}`;
|
||||
const component = chatMessage.MessageBuilder.fromString(message).toJSON();
|
||||
return chatMessage.fromNotch(component).toAnsi();
|
||||
}
|
||||
|
||||
bot.console = {};
|
||||
bot.console.log = function(message) {
|
||||
console.log(prefix('&6LOG', message));
|
||||
};
|
||||
bot.console.info = function(message) {
|
||||
console.log(prefix('&aINFO', message));
|
||||
};
|
||||
bot.console.error = function(message) {
|
||||
console.log(prefix('&cERROR', message));
|
||||
};
|
||||
|
||||
bot.consoleQueue = [];
|
||||
const consoleQueueInterval = setInterval(function() {
|
||||
if (!bot.messageLogging) return;
|
||||
if (bot.consoleQueue.length > 50) bot.consoleQueue = [];
|
||||
if (bot.consoleQueue[0] || bot.consoleQueue[0] === '') {
|
||||
console.log(
|
||||
'\u001b[48:5:208m' +
|
||||
bot.options.host +
|
||||
'\u001b[0m' +
|
||||
': ' +
|
||||
bot.consoleQueue[0].substring(0, 10000),
|
||||
);
|
||||
bot.console.log(bot.consoleQueue[0].substring(0, 10000));
|
||||
bot.consoleQueue.shift();
|
||||
}
|
||||
}, 100);
|
||||
|
@ -35,7 +50,6 @@ function inject(bot, dcclient, config, rl) {
|
|||
log.apply(console, Array.prototype.slice.call(arguments));
|
||||
rl._refreshLine();
|
||||
};
|
||||
const {MessageBuilder} = require('prismarine-chat')('1.18.2');
|
||||
rl.on('line', function(line) {
|
||||
try {
|
||||
if (line.toLowerCase() === '' ||
|
||||
|
@ -73,10 +87,10 @@ function inject(bot, dcclient, config, rl) {
|
|||
if (line === '.kill') process.exit();
|
||||
if (line.startsWith('.')) {
|
||||
return bot.command_handler.run(
|
||||
'Console',
|
||||
'§a§lConsole§r',
|
||||
bot.username,
|
||||
bot.username,
|
||||
'*' + line.substring(1),
|
||||
'c0ns0le-uuid',
|
||||
bot.uuid,
|
||||
);
|
||||
}
|
||||
bot.tellraw('@a', [
|
||||
|
@ -100,9 +114,11 @@ function inject(bot, dcclient, config, rl) {
|
|||
text: '\u203a ',
|
||||
color: 'dark_gray',
|
||||
},
|
||||
MessageBuilder.fromString('&7' + line),
|
||||
chatMessage.MessageBuilder.fromString('&7' + line),
|
||||
]);
|
||||
} catch (e) {}
|
||||
} catch (e) {
|
||||
bot.console.error(e);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
|
|
|
@ -90,9 +90,7 @@ function inject(bot, dcclient, config) {
|
|||
});
|
||||
|
||||
fillCore();
|
||||
} catch (e) {
|
||||
return;
|
||||
}
|
||||
} catch (e) {}
|
||||
},
|
||||
// fillCore(useCore) {
|
||||
// const fillCommand = `/minecraft:fill ${core.start.x} ${core.start.y} ${core.start.z} ${core.end.x} ${core.end.y} ${core.end.z} command_block{CustomName:'{"text":"ChomeNS Bot Core","color":"yellow"}'}`;
|
||||
|
|
Loading…
Reference in a new issue