rewrote majority of modules...

+ more zareaguj supports more than one emout
+ zareaguj, rekni, clap and clap2 delete original message
+ added more voliz
This commit is contained in:
Histmy 2021-04-12 15:55:29 +02:00
parent 14e3dbdbf7
commit 276966b93a
14 changed files with 522 additions and 430 deletions

8
addons/ftipy.json Normal file
View File

@ -0,0 +1,8 @@
[
"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"
]

135
addons/pomoc.json Normal file
View File

@ -0,0 +1,135 @@
[
[
"tady sou ti komandy k tomudle botoj ```more rekni <str>",
"more hraj <hra>",
"more fajt <kdo>",
"more kobel",
"more jo",
"more ne",
"more vole",
"more vtip",
"more rekt",
"more pisnicka",
"more gif",
"more lag",
"more pozdrav <koho>",
"more zhejti <co>",
"more uraz <koho>",
"more nazor <predmet>",
"more jsi <co>",
"more jakmoc <co>",
"more je <podmet> <predmet>",
"more ma <podmet> <predmet>",
"more triggered```"
],
{
"title": "__tadi sou ti komandi k tomudle botoj__",
"color": 16711680,
"thumbnail": {
"url": "https://cdn.discordapp.com/emojis/730175107313565717.png"
},
"author": {
"name": "DENIM 3001",
"url": "https://denim3001.deadfish.cz",
"icon_url": "https://cdn.discordapp.com/emojis/730175107313565717.png"
},
"fields": [
{
"name": "more rekni [co]",
"value": "povidam povidacki",
"inline": true
},
{
"name": "more jakmoc [co]",
"value": "si kokot na 100%",
"inline": true
},
{
"name": "more nazor [na co]",
"value": "si pycovina",
"inline": true
},
{
"name": "more pozdrav [koho]",
"value": "zdravym",
"inline": true
},
{
"name": "more zhejti [koho, co]",
"value": "si pycovina zasrana vimrdana",
"inline": true
},
{
"name": "more kam [...]",
"value": "patris pod most",
"inline": true
},
{
"name": "more jsi [co]",
"value": "jsem picovina",
"inline": true
},
{
"name": "more mas [co]",
"value": "ne nemam pero",
"inline": true
},
{
"name": "more ma [...]",
"value": "ne nema",
"inline": true
},
{
"name": "more fajt",
"value": "fyt",
"inline": true
},
{
"name": "more clap [...]",
"value": "potlesk",
"inline": true
},
{
"name": "more voliz [koho]",
"value": "lick",
"inline": true
},
{
"name": "more pomoc",
"value": "oldskul povidacky",
"inline": true
},
{
"name": "more pomoc2",
"value": "mocnejsi povidacky",
"inline": true
},
{
"name": "more vojs",
"value": "priseru se do vojsu",
"inline": true
},
{
"name": "more odejdi/tahni/disconnect/leave/odpoj/vodpoj/votpoj/vypadni",
"value": "vodprejsknu z vojsu",
"inline": true
},
{
"name": "more slak",
"value": "te natahne",
"inline": true
},
{
"name": "more vtip",
"value": "povim vam ftip vo simsovi",
"inline": true
},
{
"name": "__dalsi shit komandi__",
"value": "**more jo\t\t\t\t\tmore ne\nmore pisnicka\t\tmore omegasmart\nmore lag\t\t\t\tmore triggered\nmore rekt\t\t\t\tmore kobel\nmore vole**",
"inline": true
}
]
}
]

View File

@ -1,127 +0,0 @@
module.exports = {
more_komand: (mes, komand) => {
switch (komand) {
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':
const embed = {
"title": "__tadi sou ti komandi k tomudle botoj__",
"color": 16711680,
"thumbnail": {
"url": "https://cdn.discordapp.com/emojis/730175107313565717.png"
},
"author": {
"name": "DENIM 3001",
"url": "https://denim3001.deadfish.cz",
"icon_url": "https://cdn.discordapp.com/emojis/730175107313565717.png"
},
"fields": [
{
"name": "more rekni [co]",
"value": "povidam povidacki",
"inline": true
},
{
"name": "more jakmoc [co]",
"value": "si kokot na 100%",
"inline": true
},
{
"name": "more nazor [na co]",
"value": "si pycovina",
"inline": true
},
{
"name": "more pozdrav [koho]",
"value": "zdravym",
"inline": true
},
{
"name": "more zhejti [koho, co]",
"value": "si pycovina zasrana vimrdana",
"inline": true
},
{
"name": "more kam [...]",
"value": "patris pod most",
"inline": true
},
{
"name": "more jsi [co]",
"value": "jsem picovina",
"inline": true
},
{
"name": "more mas [co]",
"value": "ne nemam pero",
"inline": true
},
{
"name": "more ma [...]",
"value": "ne nema",
"inline": true
},
{
"name": "more fajt",
"value": "fyt",
"inline": true
},
{
"name": "more clap [...]",
"value": "potlesk",
"inline": true
},
{
"name": "more voliz [koho]",
"value": "lick",
"inline": true
},
{
"name": "more pomoc",
"value": "oldskul povidacky",
"inline": true
},
{
"name": "more pomoc2",
"value": "mocnejsi povidacky",
"inline": true
},
{
"name": "more vojs",
"value": "priseru se do vojsu",
"inline": true
},
{
"name": "more odejdi/tahni/disconnect/leave/odpoj/vodpoj/votpoj/vypadni",
"value": "vodprejsknu z vojsu",
"inline": true
},
{
"name": "more slak",
"value": "te natahne",
"inline": true
},
{
"name": "more vtip",
"value": "povim vam ftip vo simsovi",
"inline": true
},
{
"name": "__dalsi shit komandi__",
"value": "**more jo\t\t\t\t\tmore ne\nmore pisnicka\t\tmore omegasmart\nmore lag\t\t\t\tmore triggered\nmore rekt\t\t\t\tmore kobel\nmore vole**",
"inline": true
}
]
}
mes.channel.send({ embed });
break;
default:
return false;
}
return true;
}
};

View File

@ -1,146 +0,0 @@
const spinkacky = [];
const spostece = ['mares', 'mareš', 'purfie', 'denim', '<@!639142938965704745>'];
const emouty = ['purfiek3:616026189269696512', 'purfiek3:616026189269696512', 'purfiek3:616026189269696512', 'purfieUchyl:576487602203525138', 'bafW:574646319696576532', 'purfiek4:616026180889477258'];
const zarizeni = { desktop: 'Počítač', mobile: 'Mobil', web: 'Web' };
const statusy = { online: '🟢', idle: '🟡', dnd: '🔴' };
const rand = max => Math.floor(Math.random() * max);
module.exports = {
more_komand: (mes, komand, celArgs) => {
switch (komand) {
case 'vole':
mes.channel.send('coe voe more gadzo');
break;
case 'debug_log':
console.log(celArgs);
mes.channel.send('je to v konzoli');
break;
case 'clap':
mes.channel.send(`${celArgs} <a:DENIM3K_Clap:629991700571619328>`);
break;
case 'clap2':
mes.channel.send(`<a:DENIM3K_Clap2:820793564043673650> ${celArgs}`);
break;
case 'kobel':
mes.channel.send('kde?');
break;
case 'ano':
case 'jo':
case 'ne':
mes.channel.send('ok');
break;
case 'rekt':
mes.channel.send('**ouuuuuuuuuuuuuuuuuuuuu**');
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 'triggered':
mes.channel.send('toto me trickeruje');
break;
case 'status':
const ping = /^<@!?\d+>$/;
if (!ping.test(celArgs)) {
mes.channel.send('tak si kokot ti kokote');
break;
}
const uzivatel = mes.mentions.users.first();
const embed = {
title: `Informace o statusech pro ${uzivatel.username}:`,
color: 431075
};
const presence = uzivatel.presence.clientStatus;
if (!presence) {
embed.description = '*Všude je offline*';
} else {
const uStatusy = [];
Object.keys(presence).forEach(status => {
uStatusy.push(`${zarizeni[status]}: ${statusy[presence[status]]}`);
});
embed.description = uStatusy.join('\n');
}
mes.channel.send({ embed });
break;
case 'spinkáček':
case 'spinkacek':
if (mes.author.bot) {
mes.channel.send('<:delassibazny:643059863059955723>');
break;
}
if (spinkacky.includes(mes.author.id)) {
mes.channel.send('nespis uz?????');
break;
}
if (mes.member.voice.channel) mes.member.voice.kick('spinkacek');
spinkacky.push(mes.author.id);
mes.react('😴');
break;
case 'vstáváček':
case 'vstavacek':
if (!spinkacky.includes(mes.author.id)) {
mes.channel.send('uz jsi vzhuru ty hajzle');
break;
}
spinkacky.splice(spinkacky.indexOf(mes.author.id), 1);
mes.channel.send('dobre rano hajzle');
break;
case 'zareaguj':
case 'reakce':
case 'reaguj':
if (!celArgs) {
mes.channel.send('retard');
break;
}
let naCo;
(async () => {
if (mes.reference) {
naCo = await mes.channel.messages.fetch(mes.reference.messageID);
} else {
const msgs = [...mes.channel.messages.cache.values()];
naCo = msgs[msgs.length - 2];
}
naCo.react(celArgs)
.catch(() => mes.channel.send('retard'));
})();
break;
default:
return false;
}
return true;
},
on_voiceStateUpdate: (bef, aft) => {
if (!aft.channel || bef.channel) return;
if (spinkacky.includes(aft.id)) aft.kick();
},
on_message: mes => {
let sance = 0;
spostece.forEach(sp => {
if (mes.content.toLowerCase().includes(sp)) sance++;
});
if (rand(3) < sance) mes.react(emouty[rand(emouty.length)]);
}
};

48
modules/komArgs.js Normal file
View File

@ -0,0 +1,48 @@
// Komandy, který pošlou jenom celArgs a random hovno
module.exports = {
more_komand: (mes, komand, celArgs) => {
let corict;
switch (komand) {
case 'rekni':
if (mes.author.bot) break;
corict = celArgs ? celArgs : 'co mam jako ric';
mes.channel.send(corict);
mes.delete();
break;
case 'clap':
mes.channel.send(`${celArgs} <a:DENIM3K_Clap:629991700571619328>`);
mes.delete();
break;
case 'clap2':
mes.channel.send(`<a:DENIM3K_Clap2:820793564043673650> ${celArgs}`);
mes.delete();
break;
case 'voliž':
case 'voliz':
mes.channel.send(`<a:DENIM3K_lickL:678025691207565313>${celArgs}<a:DENIM3K_lickR:678025693313105964>`);
break;
case 'pozdrav':
mes.channel.send(`zdravim ${celArgs}`);
break;
case 'zhejti':
mes.channel.send(`${celArgs} je pycovina zasrana vimrdana`);
break;
case 'uraž':
case 'uraz':
mes.channel.send(`${celArgs} , u suck`);
break;
default:
return false;
}
return true;
}
};

125
modules/komComplex.js Normal file
View File

@ -0,0 +1,125 @@
// Komandy, který buď nějakým způsobem mění funkci nebo "vzhled" bota
// nebo donutí bota něco udělat (odeslání zprávy s výsledkem nebo smazání originální zprávy se nepočítá)
const akce = { hraj: 'PLAYING', sleduj: 'WATCHING', poslouchej: 'LISTENING', soutez: 'COMPETING', soutěž: 'COMPETING', nedelej: '', nedělej: '' };
const zarizeni = { desktop: 'Počítač', mobile: 'Mobil', web: 'Web' };
const statusy = { online: '🟢', idle: '🟡', dnd: '🔴' };
const ping = /^<@!?\d+>$/;
module.exports = {
more_komand: (mes, komand, celArgs) => {
switch (komand) {
case 'online':
case 'onlajn':
case 'zelenej':
mes.client.user.setStatus('online');
mes.channel.send('ano pane');
break;
case 'neviditelnej':
case 'offline':
case 'oflajn':
mes.client.user.setStatus('invisible');
mes.channel.send('ano pane');
break;
case 'dnd':
case 'nerusit':
case 'nerušit':
case 'červenej':
case 'cervenej':
mes.client.user.setStatus('dnd');
mes.channel.send('ano pane');
break;
case 'žlutej':
case 'zlutej':
case 'afk':
case 'idle':
case 'nepřítomnej':
case 'nepritomnej':
mes.client.user.setStatus('idle');
mes.channel.send('ano pane');
break;
case 'hraj':
case 'sleduj':
case 'poslouchej':
case 'soutez':
case 'soutěž':
case 'nedelej':
case 'nedělej':
mes.client.user.setActivity(celArgs, { type: akce[komand] });
mes.channel.send('ano pane');
mes.react('730175107313565717');
break;
case 'fight':
case 'figh':
case 'fajt':
if (!ping.test(celArgs)) {
mes.channel.send('tak si kokot ti kokote');
break;
}
const vyherce = Math.round(Math.random()) ? mes.author : celArgs;
mes.channel.send(`tento figh vyhrál: ${vyherce}!`);
break;
case 'status':
if (!ping.test(celArgs)) {
mes.channel.send('tak si kokot ti kokote');
break;
}
const uzivatel = mes.mentions.users.first();
const embed = {
title: `Informace o statusech pro ${uzivatel.username}:`,
color: 431075
};
const presence = uzivatel.presence.clientStatus;
if (!presence) {
embed.description = '*Všude je offline*';
} else {
const uStatusy = [];
Object.keys(presence).forEach(status => {
uStatusy.push(`${zarizeni[status]}: ${statusy[presence[status]]}`);
});
embed.description = uStatusy.join('\n');
}
mes.channel.send({ embed });
break;
case 'zareaguj':
case 'reakce':
case 'reaguj':
if (!celArgs) {
mes.channel.send('retard');
break;
}
const emouty = celArgs.match(/<a?:\w{1,32}:\d+>/g);
if (!emouty) {
mes.channel.send('retard');
break;
}
let naCo;
(async () => {
if (mes.reference) {
naCo = await mes.channel.messages.fetch(mes.reference.messageID);
} else {
const msgs = [...mes.channel.messages.cache.values()];
naCo = msgs[msgs.length - 2];
}
emouty.forEach(emout => naCo.react(emout));
mes.delete();
})();
break;
default:
return false;
}
return true;
}
};

57
modules/komRNG.js Normal file
View File

@ -0,0 +1,57 @@
// Komandy, který jenom pošlou random hovno a jsou nějakým způsobem ovlivněný RNG
const ftipy = JSON.parse(require('fs').readFileSync('addons/ftipy.json'));
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'];
const rand = max => Math.floor(math.rngom() * max);
module.exports = {
more_komand: (mes, komand, celArgs) => {
let corict;
switch (komand) {
case 'vtip':
case 'ftip':
mes.channel.send(ftipy[rand(ftipy.length)]);
break;
case 'kam':
mes.channel.send(mista[rand(mista.length)]);
break;
case 'je':
mes.channel.send(rand(2) ? 'jo je' : 'ne neni');
break;
case 'má':
case 'ma':
mes.channel.send(rand(2) ? 'jo ma' : 'ne nema');
break;
case 'nazor':
case 'názor':
mes.channel.send(rand(2) ? `mam rad ${celArgs}` : `${celArgs} je picovina`);
break;
case 'si':
case 'jsi':
corict = celArgs.replace('?', '');
mes.channel.send(rand(2) ? `jo sem ${corict}` : `ne nejsem ${corict}`);
break;
case 'mas':
case 'máš':
corict = celArgs.replace('?', '');
mes.channel.send(rand(2) ? `jo mam ${corict}` : `ne nemam ${corict}`);
break;
case 'jakmoc':
mes.channel.send(`${celArgs} na ${rand(101)}%`);
break;
default:
return false;
}
return true;
}
}

57
modules/komStatic.js Normal file
View File

@ -0,0 +1,57 @@
// Sekce pro komandy, který jenom pošlou nějaký hovno bez a nevyžadují argumenty
const pomoc = JSON.parse(require('fs').readFileSync('addons/pomoc.json'));
module.exports = {
more_komand: (mes, komand) => {
switch (komand) {
case 'vole':
mes.channel.send('coe voe more gadzo');
break;
case 'kobel':
mes.channel.send('kde?');
break;
case 'ano':
case 'jo':
case 'ne':
mes.channel.send('ok');
break;
case 'rekt':
mes.channel.send('**ouuuuuuuuuuuuuuuuuuuuu**');
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 'triggered':
mes.channel.send('toto me trickeruje');
break;
case 'slak':
case 'šlak':
mes.channel.send('te natahne\nhttps://tenor.com/view/tired-done-imdone-afterschool-school-gif-5682065');
break;
case 'pomoc':
mes.channel.send(pomoc[0].join('\n'));
break;
case 'pomoc2':
mes.channel.send({ embed: pomoc[1] });
break;
default:
return false;
}
return true;
}
}

View File

@ -1,117 +0,0 @@
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'];
const akce = { hraj: 'PLAYING', sleduj: 'WATCHING', poslouchej: 'LISTENING', soutez: 'COMPETING', soutěž: 'COMPETING', nedelej: '', nedělej: '' };
const role = { online: '684443816383610916', idle: '684444083065978941', dnd: '684444020558135399', offline: '684443903759614049', onlinephone: '777989420728975390' };
const rand = max => Math.floor(Math.random() * max);
module.exports = {
more_komand: (mes, komand, celArgs) => {
let corict;
switch (komand) {
case 'rekni':
if (mes.author.bot) break;
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':
mes.client.user.setActivity(celArgs, { type: akce[komand] });
mes.channel.send('ano pane');
mes.react('730175107313565717');
break;
case 'fight':
case 'figh':
case 'fajt':
const ping = /^<@!?\d+>$/;
if (!ping.test(celArgs)) {
mes.channel.send('tak si kokot ti kokote');
break;
}
const vyherce = Math.round(Math.random()) ? mes.author : celArgs;
mes.channel.send(`tento figh vyhrál: ${vyherce}!`);
break;
case 'slak':
case 'šlak':
mes.channel.send('te natahne\nhttps://tenor.com/view/tired-done-imdone-afterschool-school-gif-5682065');
break;
case 'vtip':
case 'ftip':
mes.channel.send(ftipy[rand(ftipy.length)]);
break;
case 'kam':
mes.channel.send(mista[rand(mista.length)]);
break;
case 'pozdrav':
mes.channel.send(`zdravim ${celArgs}`);
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(rand(2) ? `mam rad ${celArgs}` : `${celArgs} je picovina`);
break;
case 'si':
case 'jsi':
corict = celArgs.replace('?', '');
mes.channel.send(rand(2) ? `jo sem ${corict}` : `ne nejsem ${corict}`);
break;
case 'mas':
case 'máš':
corict = celArgs.replace('?', '');
mes.channel.send(rand(2) ? `jo mam ${corict}` : `ne nemam ${corict}`);
break;
case 'je':
mes.channel.send(rand(2) ? 'jo je' : 'ne neni');
break;
case 'má':
case 'ma':
mes.channel.send(rand(2) ? 'jo ma' : 'ne nema');
break;
case 'jakmoc':
mes.channel.send(`${celArgs} na ${rand(101)}%`);
break;
default:
return false;
}
return true;
},
on_presenceUpdate: (bef, aft) => {
if (aft.guild.id !== '555779161067749446' || process.env.IGNORE_PRESENCE) return;
if (!bef) bef = { status: 'offline', clientStatus: {} };
if (bef.clientStatus.mobile === 'online' && bef.clientStatus.desktop !== 'online') bef.status = 'onlinephone';
if (aft.clientStatus.mobile === 'online' && aft.clientStatus.desktop !== 'online') aft.status = 'onlinephone';
if (bef.status === aft.status) return;
aft.member.roles.add(role[aft.status]);
aft.member.roles.remove(role[bef.status]);
}
};

View File

@ -1,3 +1,5 @@
// Prostě onready
module.exports = {
on_ready: () => console.log('A jedeš!')
};

45
modules/spink.js Normal file
View File

@ -0,0 +1,45 @@
// Modul dedikovaný funkci spinkáček
const spinkacky = [];
module.exports = {
more_komand: (mes, komand) => {
switch (komand) {
case 'spinkáček':
case 'spinkacek':
if (mes.author.bot) {
mes.channel.send('<:delassibazny:643059863059955723>');
break;
}
if (spinkacky.includes(mes.author.id)) {
mes.channel.send('nespis uz?????');
break;
}
if (mes.member.voice.channel) mes.member.voice.kick('spinkacek');
spinkacky.push(mes.author.id);
mes.react('😴');
break;
case 'vstáváček':
case 'vstavacek':
if (!spinkacky.includes(mes.author.id)) {
mes.channel.send('uz jsi vzhuru ty hajzle');
break;
}
spinkacky.splice(spinkacky.indexOf(mes.author.id), 1);
mes.channel.send('dobre rano hajzle');
break;
default:
return false;
}
return true;
},
on_voiceStateUpdate: (bef, aft) => {
if (!aft.channel || bef.channel) return;
if (spinkacky.includes(aft.id)) aft.kick();
},
}

View File

@ -1,40 +0,0 @@
module.exports = {
more_komand: (mes, komand) => {
const c = mes.client.user;
switch (komand) {
case 'online':
case 'onlajn':
case 'zelenej':
c.setStatus('online');
break;
case 'neviditelnej':
case 'offline':
case 'oflajn':
c.setStatus('invisible');
break;
case 'dnd':
case 'nerusit':
case 'nerušit':
case 'červenej':
case 'cervenej':
c.setStatus('dnd');
break;
case 'žlutej':
case 'zlutej':
case 'afk':
case 'idle':
case 'nepřítomnej':
case 'nepritomnej':
c.setStatus('idle');
break;
default:
return false;
}
return true;
}
};

View File

@ -1,3 +1,5 @@
// Cokoliv co má něco společnýho s vojsem
const fs = require('fs');
function vypocitatCas(vojsl) {
@ -136,6 +138,7 @@ module.exports = {
return true;
},
// Neodposlouchávej
on_voiceStateUpdate: (bef, aft) => {
if (!aft.channel || !aft.guild.voice || aft.member.user === aft.guild.client.user) return;

42
modules/zbytek.js Normal file
View File

@ -0,0 +1,42 @@
// Komandy nebo handelery který se nikam jinam nehodí
const role = { online: '684443816383610916', idle: '684444083065978941', dnd: '684444020558135399', offline: '684443903759614049', onlinephone: '777989420728975390' };
const spoustece = ['mares', 'mareš', 'purfie', 'denim', '<@!477202009066438668>'];
const emouty = ['purfiek3:616026189269696512', 'purfiek3:616026189269696512', 'purfiek3:616026189269696512', 'purfieUchyl:576487602203525138', 'bafW:574646319696576532', 'purfiek4:616026180889477258'];
const rand = max => Math.floor(Math.random() * max);
module.exports = {
more_komand: (mes, komand, celArgs) => {
switch (komand) {
case 'debug_log':
console.log('log: ', celArgs);
mes.channel.send('je to v konzoli');
break;
default:
return false;
}
return true;
},
// Změna rolí podle statusu
on_presenceUpdate: (bef, aft) => {
if (aft.guild.id !== '555779161067749446' || process.env.IGNORE_PRESENCE) return;
if (!bef) bef = { status: 'offline', clientStatus: {} };
if (bef.clientStatus.mobile === 'online' && bef.clientStatus.desktop !== 'online') bef.status = 'onlinephone';
if (aft.clientStatus.mobile === 'online' && aft.clientStatus.desktop !== 'online') aft.status = 'onlinephone';
if (bef.status === aft.status) return;
aft.member.roles.add(role[aft.status]);
aft.member.roles.remove(role[bef.status]);
},
// Zareaguje na zprávu pokud obsahuje spouštěče a pokud RNG
on_message: mes => {
let sance = 0;
spoustece.forEach(sp => {
if (mes.content.toLowerCase().includes(sp)) sance++;
});
if (rand(3) < sance) mes.react(emouty[rand(emouty.length)]);
}
}