Uwev2/src/inc/trigger/useless_nxy.mjs
2018-09-14 21:55:13 +02:00

259 lines
7.9 KiB
JavaScript

import sql from "../sql";
import fetch from "../fetch";
const data = {
yiff: [],
kill_templates: [],
kill_parts: {},
genders: [],
woahs: [],
slap: []
};
Object.keys(data).forEach(cur => {
sql.any("select data from useless where trigger = $1 limit 1", [cur])
.then(rows => {
data[cur] = JSON.parse(rows[0].data);
})
.catch(err => {
console.log(err);
});
});
export default bot => {
bot._trigger.set("kiss", new bot.trigger({
call: /^(\.|\/)kiss/i,
set: "nxy",
help: {
text: "Kisses a user",
usage: "[b].kiss[/b] [i](<nick>)[/i]"
},
f: e => {
e.reply(`(づ。◕‿‿◕。)づ" [color=red]。。・゜゜・。。・゜❤[/color] [b]${e.args[0] || e.user.nick}[/b] [color=red]❤[/color]`);
}
}));
bot._trigger.set("hug", new bot.trigger({
call: /^(\.|\/)hug/i,
set: "nxy",
help: {
text: "Hugs a user",
usage: "[b].hug[/b] [i](<nick>)[/i]"
},
f: e => {
e.reply(`[color=red]♡❤♡♥[/color] [b]${e.args[0] || e.user.nick}[/b] [color=red]♥♡❤♡♥[/color]`);
}
}));
bot._trigger.set("kill", new bot.trigger({
call: /^(\.|\/)kill/i,
set: "nxy",
f: e => {
e.replyAction(data.kill_templates[~~(Math.random() * data.kill_templates.length)]
.replace("{user}", `[b]${e.args[0] || e.user.nick}[/b]`)
.replace("{limbs}", data.kill_parts.limbs[~~(Math.random() * data.kill_parts.limbs.length)])
.replace("{gun}", data.kill_parts.gun[~~(Math.random() * data.kill_parts.gun.length)])
.replace("{weapon_stab}", data.kill_parts.weapon_stab[~~(Math.random() * data.kill_parts.weapon_stab.length)])
.replace("{weapon_slice}", data.kill_parts.weapon_slice[~~(Math.random() * data.kill_parts.weapon_slice.length)])
.replace("{weapon_crush}", data.kill_parts.weapon_crush[~~(Math.random() * data.kill_parts.weapon_crush.length)])
.replace("{weapon_explosive}", data.kill_parts.weapon_explosive[~~(Math.random() * data.kill_parts.weapon_explosive.length)])
.replace("{tall_thing}", data.kill_parts.tall_thing[~~(Math.random() * data.kill_parts.tall_thing.length)])
.replace("{spiked_thing}", data.kill_parts.spiked_thing[~~(Math.random() * data.kill_parts.spiked_thing.length)])
.replace("{bomb}", data.kill_parts.bomb[~~(Math.random() * data.kill_parts.bomb.length)])
);
}
}));
bot._trigger.set("yiff", new bot.trigger({
call: /^(\.|\/)yiff/i,
set: "nxy",
f: e => {
e.replyAction(data.yiff[~~(Math.random() * data.yiff.length)]
.split("{user}").join(`[b]${e.args[0] || e.user.nick}[/b]`)
.split("{yiffer}").join(`[b]${e.user.nick}[/b]`)
.split("{nick}").join(`[b]${e.self.me.nickname}[/b]`)
.split("{channel}").join(`${e.channel}`)
);
}
}));
bot._trigger.set("bier", new bot.trigger({
call: /^(\.|\/)bier/i,
set: "nxy",
f: e => {
e.replyAction(`schenkt ein kühles Blondes an [b]${e.args[0] || e.user.nick}[/b] aus.`);
}
}));
bot._trigger.set("fucken", new bot.trigger({
call: /^(\.|\/)fucken/i,
set: "nxy",
f: e => {
const user = e.args[0] || e.user.nick;
e.replyAction(`fuckt [b]${user}[/b] und tötet [b]${user}[/b] anschließend.`);
}
}));
bot._trigger.set("hack", new bot.trigger({
call: /^(\.|\/)hack/i,
set: "nxy",
f: e => {
e.reply(`hacking ${e.args[0] || e.user.nick}...`);
}
}));
bot._trigger.set("spit", new bot.trigger({
call: /^(\.|\/)spit/i,
set: "nxy",
f: e => {
e.replyAction(`spits on [b]${e.args[0] || e.user.nick}[/b] like a dirty whore.`);
}
}));
bot._trigger.set("assume", new bot.trigger({
call: /^(\.|\/)assume/i,
set: "nxy",
f: e => {
e.reply(`Assuming [b]${e.args[0] || e.user.nick}'s[/b] gender... it's a ${data.genders[~~(Math.random() * data.genders.length)]}.`);
}
}));
bot._trigger.set("jn", new bot.trigger({
call: /^(\.|\/)jn/i,
set: "nxy",
f: e => {
e.reply(`${e.user.nick}: [b]${~~(Math.random() * 2) ? "Ja" : "Nein"}[/b]`);
}
}));
bot._trigger.set("choose", new bot.trigger({
call: /^(\.|\/)choose .*/i,
set: "nxy",
f: e => {
const args = e.message.substring(8).trim().split(",");
if (args.length < 2)
return e.reply(`${e.user.nick}: Ob du behindert bist?`);
e.reply(`${e.user.nick}: ${args[~~(Math.random() * args.length)].trim()}`);
}
}));
bot._trigger.set("huehuehue", new bot.trigger({
call: /^huehuehue$/i,
set: "nxy",
f: e => {
e.reply("huehuehue");
}
}));
bot._trigger.set("woah", new bot.trigger({
call: /woah/i,
set: "nxy",
f: e => {
if (~~(Math.random() * 4))
e.reply(data.woahs[~~(Math.random() * data.woahs.length)]);
}
}));
bot._trigger.set("REEE", new bot.trigger({
call: /reee+$/i,
set: "nxy",
f: e => {
e.reply("R".padEnd(~~(Math.random() * 20 + 10), "E"));
}
}));
bot._trigger.set("meme", new bot.trigger({
call: /^(\.|\/)meme .*/i,
set: "nxy",
active: false,
f: e => {
const args = e.message.trim().substring(6).split("/");
//if(args.length < 3)
return e.reply("[WIP] too few arguments: .meme [meme] / [line 1] / [line 2]");
}
}));
bot._trigger.set("slap", new bot.trigger({
call: /^(\.|\/)slap/i,
set: "nxy",
f: e => {
e.replyAction(data.slap[~~(Math.random() * data.slap.length)]
.replace("{user}", `[b]${e.args[0] || e.user.nick}[/b]`)
);
}
}));
bot._trigger.set("fw", new bot.trigger({
call: /^(\.|\/)fw .*/i,
set: "nxy",
f: e => {
const args = e.message.substring(4).trim();
e.reply([...args.toUpperCase()].map(c => c === ' ' ? ' ' : String.fromCharCode(65248 + c.charCodeAt(0))).join``);
}
}));
bot._trigger.set("waifu_husbando", new bot.trigger({
call: /^(\.|\/)(waifu|husbando)/i,
set: "nxy",
f: e => {
let nick = e.args[0] || (e.type === "tg"?e.user.username || e.user.nick:e.user.nick)
let mode = e.cmd;
nick = nick.split("@").join("");
if(e.args.length > 0 && e.args[0].charAt(0) === "=") {
let tmp = e.args[0].slice(1);
sql.any(
`insert into nxy_users (prefix, nick, ${mode}) values ($1, lower($2), $3) on conflict (prefix) do update set ${mode} = excluded.${mode}, nick = $2`, [
e.user.prefix,
(e.type === "tg"?e.user.username || e.user.nick:e.user.nick),
tmp
])
.then(rows => {
e.reply(`${mode.charAt(0).toUpperCase()+mode.slice(1)} set to: [b]${tmp}[/b]`)
})
.catch(err => console.log(err));
}
else {
sql.any(`select ${mode} from nxy_users where lower(nick) = lower($1) limit 1`, [nick])
.then(rows => {
if(!rows[0])
return e.reply(`[b]${mode.charAt(0).toUpperCase() + mode.slice(1)}[/b]: none`);
e.reply(`${mode.charAt(0).toUpperCase() + mode.slice(1)}: [b]${rows[0][mode]}[/b]`);
})
.catch(err => console.log(err));
}
}
}));
bot._trigger.set("asshole", new bot.trigger({
call: /^(\.|\/)asshole/i,
set: "nxy",
f: e => {
e.reply(`Jamba Arschlochscanner: [b]${e.args[0] || e.user.nick}[/b] ist zu ${~~(Math.random() * 100 + 1)}% ein Arschloch.`);
}
}));
bot._trigger.set("isup", new bot.trigger({
call: /^(\.|\/)isup .*/i,
set: "nxy",
f: e => {
const addr = !e.args[0].match(/^https?/g) ? `https://${e.args[0]}` : e.args[0];
fetch(addr)
.then(res => {
e.reply(`[b]${addr}[/b] seems to be [b]up[/b].`);
})
.catch(err => {
e.reply(`[b]${addr}[/b] seems to be [b]down[/b].`);
});
}
}));
bot._trigger.set("einschlaefern", new bot.trigger({
call: /^(\.|\/)einschläfern/i,
set: "nxy",
f: e => {
e.replyAction(`schläfert [b]${e.args[0] || e.user.nick}[/b] mit einer Spritze Ketamin ein.`);
}
}));
};