287 lines
10 KiB
JavaScript
287 lines
10 KiB
JavaScript
const { Client } = require('discord.js');
|
|
const dotenv = require('dotenv');
|
|
|
|
const client = new Client();
|
|
dotenv.config();
|
|
|
|
const prefix = 'mor';
|
|
const role = {online: '684443816383610916', idle: '684444083065978941', dnd: '684444020558135399', offline: '684443903759614049'};
|
|
const akce = {hraj: 'PLAYING', sleduj: 'WATCHING', poslouchej: 'LISTENING', soutez: 'COMPETING', soutěž: 'COMPETING', nedelej: '', nedělej: ''};
|
|
const spostece = ['mares', 'mareš', 'purfie', 'denim', '<@!639142938965704745>'];
|
|
const emouty = ['purfiek3:616026189269696512', 'purfiek3:616026189269696512', 'purfiek3:616026189269696512', 'purfieUchyl:576487602203525138', 'bafW:574646319696576532', 'purfiek4:616026180889477258'];
|
|
const ftipy = ['Tož šimša si všimnul jednoho velkeho staveniště, tak večer se tam vydal z atobatekou na boku a flefinou vruce uříznul tu největší traverzu a uříznul ji pak si ji dal na záda a šel dom ale když šel zpět tak se všimul pitbula který hlýdal staveniště a on byl na železnem řetězu tak ten řetěz popat ale nedomyslel to že ten pitbull poběží za ním a tak utíkal ale pitbull byl rychlejší a tak se mu zakousnul do prdele a tak utíkal před policií aj z pitbulem.', 'tož šimša si řekl že se pujde okoupat ale nedošlomu že na koupání potřebuje vodu a ne močůvku <:DENIM3K_weSmart:627809296624779274>', 'tož šimšu zaměstnaly na praxi do pneu servisu ale když tam došli do druhý den tak tam nic nebylo jelikož to vše vybrakoval přes noc a pak pan hlavní pneusevisák to nevydržel a exnul', 'tož šimša šel z vaku a vykopal mareše tak mocně a vykopal ho tak protože byl je závislí na cigáru a potřeboval svo mocně nemocno dáku tak vyvinul tam mocně silu aby o vykopnul', 'tož šimša jednou šel a tak moc šel do velkooooobjemního kontejnetu pro noví komponenti do jeho mašiny a podkal tam cygani a ty to tam brali a von je podkal a šel jim rozbít drčku haby se už a řek jim haby se už nevokázali u jeho kontejmetu a kdyš čel cezto dom tak mu ti kombonendi zpadli do bláda a tak mu zpadli mo ze šel sy dát zlatou dávkou', 'tož šimša seděl ve 3kole a tadytámlecti haranti mu šimšakanovali a povidaly mu 6e je římšák a šiška a šimšalátor a on povidal aby to nepovidali ale oni to povidali a pověděli mu žeto nep5estanou povidat a on ze sač4al čerchmantit a tak zasedl do traktotu a jel vo ulycy a jak jel tak jel a jel a přeji6děl kraliki a kočki a koně a jin9 zvěrstva a tak mu cajti pošeli flastr a von platil velk9 prachy, protože m2l flastra, no nem2l tag moc chlastat'];
|
|
const mista = ['na šroťák', 'na vrakoviště', 'na smetiště', 'do kontejneru', 'na skládku', 'do kriminálu', 'pod most', 'do sběru', 'do hospody', 'do najt klubu', 'na folmavu'];
|
|
let vojs;
|
|
|
|
const rand = max => Math.floor(Math.random() * max);
|
|
const rekniCas = (par = null) => {
|
|
if (!vojs) return;
|
|
const ickon = new Date();
|
|
const disp = vojs.play(`./zvuky/${par}.mp3` || `./zvuky/${ickon.getHours()}${ickon.getMinutes()}.mp3`);
|
|
disp.on('finish', () => vojs.play('./zvuky/grg.mp3'));
|
|
|
|
if (par) return;
|
|
setTimeout(rekniCas, 30 - ickon/1000 % 30);
|
|
};
|
|
|
|
client.on('ready', () => console.log('A jedeš!'));
|
|
|
|
client.on('message', mes => {
|
|
if (mes.content.startsWith(prefix)) {
|
|
const [...args] = mes.content.split(' ').slice(1);
|
|
const komand = args[0];
|
|
const celArgs = args.slice(1).join(' ');
|
|
let corict;
|
|
switch (komand) {
|
|
|
|
case 'vole':
|
|
mes.channel.send('coe voe more gadzo');
|
|
break;
|
|
|
|
case 'rekni':
|
|
corict = celArgs ? celArgs : 'co mam jako ric';
|
|
mes.channel.send(corict);
|
|
break;
|
|
|
|
case 'hraj':
|
|
case 'sleduj':
|
|
case 'poslouchej':
|
|
case 'soutez':
|
|
case 'soutěž':
|
|
case 'nedelej':
|
|
case 'nedělej':
|
|
client.user.setActivity(celArgs, {type: akce[komand]});
|
|
mes.channel.send('ano pane');
|
|
mes.react('730175107313565717');
|
|
break;
|
|
|
|
case 'pomoc':
|
|
mes.channel.send('tady sou ti komandy k tomudle botoj ```more rekni <str>\nmore hraj <hra>\nmore fajt <kdo>\nmore kobel\nmore jo\nmore ne\nmore vole\nmore vtip\nmore rekt\nmore pisnicka\nmore gif\nmore lag\nmore pozdrav <koho>\nmore zhejti <co>\nmore uraz <koho>\nmore nazor <predmet>\nmore jsi <co>\nmore jakmoc <co>\nmore je <podmet> <predmet>\nmore ma <podmet> <predmet>\nmore triggered```');
|
|
break;
|
|
|
|
case 'pomoc2':
|
|
mes.channel.send('placeholder');
|
|
break;
|
|
|
|
case 'debug_log':
|
|
console.log(celArgs);
|
|
mes.channel.send('je to v konzoli');
|
|
break;
|
|
|
|
case 'online':
|
|
case 'onlajn':
|
|
case 'zelenej':
|
|
client.user.setStatus('online');
|
|
break;
|
|
|
|
case 'neviditelnej':
|
|
case 'offline':
|
|
case 'oflajn':
|
|
client.user.setStatus('invisible');
|
|
break;
|
|
|
|
case 'dnd':
|
|
case 'nerusit':
|
|
case 'nerušit':
|
|
case 'červenej':
|
|
case 'cervenej':
|
|
client.user.setStatus('dnd');
|
|
break;
|
|
|
|
case 'žlutej':
|
|
case 'zlutej':
|
|
case 'afk':
|
|
case 'idle':
|
|
case 'nepřítomnej':
|
|
case 'nepritomnej':
|
|
client.user.setStatus('idle');
|
|
break;
|
|
|
|
case 'vojs':
|
|
const channel = mes.member.voice.channel;
|
|
if (!channel) {
|
|
mes.channel.send(`di si tam sam ne ty gadzo ${mes.author}`);
|
|
break;
|
|
}
|
|
channel.join()
|
|
.then(con => vojs = con);
|
|
if (!mes.content.includes('potichu')) mes.channel.send('<@&591306633196339261> vojs');
|
|
|
|
const ickon = new Date();
|
|
setTimeout(rekniCas, 30 - ickon/1000 % 30);
|
|
break;
|
|
|
|
case 'wojs':
|
|
mes.channel.send(`vojs se pise s normalnim v ti kriple ${mes.author}`);
|
|
break;
|
|
|
|
case "odejdi":
|
|
case "disconnect":
|
|
case "leave":
|
|
case "odpoj":
|
|
case "votpoj":
|
|
case "vodpoj":
|
|
case "vodprejskni":
|
|
case "tahni":
|
|
case "táhni":
|
|
case "vypadni":
|
|
if (!vojs) {
|
|
mes.channel.send('nejsem ve vojsu');
|
|
break;
|
|
}
|
|
vojs.channel.leave();
|
|
mes.react('purfieRIP:644609482843881483');
|
|
vojs = null;
|
|
break;
|
|
|
|
case 'fight':
|
|
case 'figh':
|
|
case 'fajt':
|
|
mes.channel.send(`ej ty gazdo figh figh figh???? ${celArgs}`);
|
|
break;
|
|
|
|
case 'clap':
|
|
mes.channel.send(`${celArgs} <a:DENIM3K_Clap:629991700571619328>`);
|
|
break;
|
|
|
|
case 'voliz':
|
|
case 'voliž':
|
|
mes.channel.send(`<a:DENIM3K_lickL:678025691207565313> ${celArgs} <a:DENIM3K_lickR:678025693313105964>`);
|
|
break;
|
|
|
|
case 'kobel':
|
|
mes.channel.send('kde?');
|
|
break;
|
|
|
|
case 'slak':
|
|
case 'šlak':
|
|
mes.channel.send('te natahne\nhttps://tenor.com/view/tired-done-imdone-afterschool-school-gif-5682065');
|
|
break;
|
|
|
|
case 'ano':
|
|
case 'jo':
|
|
case 'ne':
|
|
mes.channel.send('ok');
|
|
break;
|
|
|
|
case 'vtip':
|
|
case 'ftip':
|
|
mes.channel.send(ftipy[rand(ftipy.length)]);
|
|
break;
|
|
|
|
case 'kam':
|
|
mes.channel.send(mista[rand(mista.length)]);
|
|
break;
|
|
|
|
case 'rekt':
|
|
mes.channel.send('**ouuuuuuuuuuuuuuuuuuuuu**');
|
|
break;
|
|
|
|
case "písnička":
|
|
case "pisnicka":
|
|
mes.channel.send('http://deadfish.zaridi.to/morepisnicka.jpg');
|
|
break;
|
|
|
|
case 'omegasmart':
|
|
mes.channel.send('<:DENIM3K_OMEGASMART1:638103812892131328><:DENIM3K_OMEGASMART2:638104266195861514><:DENIM3K_OMEGASMART3:638104266178822155>\n<:DENIM3K_OMEGASMART4:638104266246062180><:DENIM3K_OMEGASMART5:638104266241867787><:DENIM3K_OMEGASMART6:638104265889546241>\n<:DENIM3K_OMEGASMART7:638104266267033610><:DENIM3K_OMEGASMART8:638104266271096882><:DENIM3K_OMEGASMART9:638104266258513960>');
|
|
break;
|
|
|
|
case 'lag':
|
|
mes.channel.send('protoze to spousti na tich stravberi');
|
|
break;
|
|
|
|
case 'pozdrav':
|
|
mes.channel.send(`zdravim ${celArgs}`);
|
|
break;
|
|
|
|
case 'test':
|
|
rekniCas(celArgs || '0000');
|
|
break;
|
|
|
|
case 'zhejti':
|
|
mes.channel.send(`${celArgs} je pycovina zasrana vimrdana`);
|
|
break;
|
|
|
|
case 'uraž':
|
|
case 'uraz':
|
|
mes.channel.send(`${celArgs} , u suck`);
|
|
break;
|
|
|
|
case 'nazor':
|
|
case 'názor':
|
|
mes.channel.send([`mam rad ${celArgs}`, `${celArgs} je picovina`][rand(2)]);
|
|
break;
|
|
|
|
case 'si':
|
|
case 'jsi':
|
|
corict = celArgs.replace('?', '');
|
|
mes.channel.send([`jo sem ${corict}`, `ne nejsem ${corict}`][rand(2)]);
|
|
break;
|
|
|
|
case 'mas':
|
|
case 'máš':
|
|
corict = celArgs.replace('?', '');
|
|
mes.channel.send([`jo mam ${corict}`, `ne nemam ${corict}`][rand(2)]);
|
|
break;
|
|
|
|
case 'je':
|
|
mes.channel.send(['jo je', 'ne neni'][rand(2)]);
|
|
break;
|
|
|
|
case 'má':
|
|
case 'ma':
|
|
mes.channel.send(['jo ma', 'ne nema'][rand(2)]);
|
|
break;
|
|
|
|
case 'jakmoc':
|
|
mes.channel.send(`${celArgs} na ${rand(101)}%`);
|
|
break;
|
|
|
|
case 'triggered':
|
|
mes.channel.send('toto me trickeruje');
|
|
break;
|
|
|
|
// case 'zvuk':
|
|
// if (!vojs) mes.channel.send('nejsem ve vojsu');
|
|
// switch (celArgs) {
|
|
// case '1':
|
|
// vojs.connection.play('./pip.mp3');
|
|
// break;
|
|
// case '2':
|
|
// vojs.connection.play('./pup.mp3');
|
|
// break;
|
|
// default:
|
|
// const dispatcher = vojs.connection.play('./pip.mp3', {volume: 0.3});
|
|
// dispatcher.on('finish', () => vojs.connection.play('./pup.mp3'));
|
|
// }
|
|
// break;
|
|
|
|
default:
|
|
mes.channel.send('co to znamena ti gadzovko');
|
|
}
|
|
}
|
|
|
|
let sance = 0;
|
|
spostece.forEach(sp => {
|
|
if (mes.content.toLowerCase().includes(sp)) sance++;
|
|
});
|
|
if (rand(3) < sance) mes.react(emouty[rand(emouty.length)]);
|
|
|
|
});
|
|
|
|
client.on('presenceUpdate', (bef, aft) => {
|
|
if (aft.guild.id !== '555779161067749446') return;
|
|
let Return = false;
|
|
try {
|
|
if (bef.status === aft.status) Return = true;
|
|
} catch {
|
|
bef = {status: 'offline'};
|
|
}
|
|
if (Return) return;
|
|
aft.member.roles.add(role[aft.status]);
|
|
aft.member.roles.remove(role[bef.status]);
|
|
console.log(`${aft.user.username} změnil status z ${bef.status} na ${aft.status}`);
|
|
});
|
|
|
|
client.login(process.env.TOKEN);
|