Uwev2/src/inc/trigger/useless_nxy.js
2017-11-28 19:01:46 +01:00

206 lines
6.6 KiB
JavaScript

import sql from "../sql.js";
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);
});
});
module.exports = bot => {
bot._trigger.set("kiss", new bot.trigger({
call: /^(\.|\/)kiss/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,
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,
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,
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,
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,
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,
f: e => {
e.reply(`hacking ${e.args[0] || e.user.nick}...`);
}
}));
bot._trigger.set("spit", new bot.trigger({
call: /^(\.|\/)spit/i,
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,
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,
f: e => {
e.reply(`${e.user.nick}: [b]${~~(Math.random() * 2) ? "Ja" : "Nein"}[/b]`);
}
}));
bot._trigger.set("choose", new bot.trigger({
call: /^(\.|\/)choose .*/i,
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,
f: e => {
e.reply("huehuehue");
}
}));
bot._trigger.set("woah", new bot.trigger({
call: /woah/i,
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,
f: e => {
e.reply("R".padEnd(~~(Math.random() * 20 + 10), "E"));
}
}));
bot._trigger.set("meme", new bot.trigger({
call: /^(\.|\/)meme .*/i,
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,
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,
f: e => {
const args = e.message.substring(4).trim();
e.reply(args.toUpperCase().split``.map(c => String.fromCharCode(65312 + (c.charCodeAt(0) - 64))).join``);
}
}));
bot._trigger.set("waifu_husbando", new bot.trigger({
call: /^(\.|\/)(waifu|husbando)/i,
f: e => {
let nick = e.args[0] || e.user.nick;
let mode = e.cmd;
if(e.args.length > 0 && e.args[0].charAt(0) === "=") {
let tmp = e.args[0].slice(1);
sql.any(`insert into nxy_users (nick, ${mode}) values (lower($1), $2) on conflict (nick) do update set ${mode} = excluded.${mode}`, [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,
f: e => {
e.reply(`Jamba Arschlochscanner: [b]${e.args[0] || e.user.nick}[/b] ist zu ${~~(Math.random() * 100 + 1)}% ein Arschloch.`);
}
}));
};