var discord = require('discord.js'); var auth = require('./auth.json'); var client = new discord.Client(); client.login(auth.token); client.on('error', console.error); function getUserFromMention(mention) { if (!mention) return; if (mention.startsWith('<@') && mention.endsWith('>')) { mention = mention.slice(2, -1); if (mention.startsWith('!')) { mention = mention.slice(1); } return mention; } } client.on("message", message => { if (message.author.bot) return; // 自分へ返事しないで if (/バカ/.test(message.content) || /馬鹿/.test(message.content)) { message.reply('アタイはバカじゃないもん!'); } else if (/バーカ/.test(message.content) || /ばーか/.test(message.content) || /バーカバーカ/.test(message.content) || /ばーかばーか/.test(message.content)) { message.channel.send('バーカバーカ!'); } else if (/強い/.test(message.content) || /つよい/.test(message.content) || /最強/.test(message.content) || /さいきょう/.test(message.content) ) { message.channel.send('アタイは最強だ!'); } else if (/ケロケロ/.test(message.content) || /けろけろ/.test(message.content)) { message.channel.send('パーフェクトフリーズ!!'); } else if (/こんにちは/.test(message.content)) { message.reply('こんにちはー'); } else if (/こんばんは/.test(message.content)) { message.reply('こんばんはー'); } else if (/おはよ/.test(message.content)) { message.reply('おはよ〜!まだ眠いだけど'); } else if (/おやすみ/.test(message.content) || /寝る/.test(message.content)) { message.reply('おやすみなさ〜い!'); } else if (/ロリ/.test(message.content)) { message.channel.send('ロリ'); } else if (/ショタ/.test(message.content)) { message.channel.send('ショタ'); } else if (/チルノちゃん/.test(message.content)) { message.reply('な〜にをー?'); } else if (/おやつに入れて/.test(message.content)) { message.reply('アタイは食べてないわ!'); } else if (/➈/.test(message.content) || /⑨/.test(message.content)) { message.channel.send('アタイは天才だよー'); } else if (message.isMentioned(client.user)) { let mes = message.content.split(' ')[1]; if (mes) { const user = getUserFromMention(mes); if (mes.startsWith('私は')) { var fs = require('fs'); fs.readFile('/root/bot/cirno-discord/userinfo.json', 'utf8', (err, data) => { if (err) throw err; let fc = JSON.parse(data); if (!fc[message.author.id]) { fc[message.author.id] = { name: '', age: '', country: '', birthday: '' } fs.writeFile('/root/bot/cirno-discord/userinfo.json', JSON.stringify(fc), 'utf8', (err) => { if (err) { console.error(err); return; } }); } keyword = message.content.split('私は'); if (message.content.endsWith('です')) { keyword = keyword[1].split('です'); if (keyword[0]) { fc[message.author.id].name = keyword[0]; fs.writeFile('/root/bot/cirno-discord/userinfo.json', JSON.stringify(fc), 'utf8', (err) => { if (err) { console.error(err); return; } }); } } else if (message.content.endsWith('歳')) { keyword = keyword[1].split('歳'); if (keyword[0]) { fc[message.author.id].age = keyword[0]; fs.writeFile('/root/bot/cirno-discord/userinfo.json', JSON.stringify(fc), 'utf8', (err) => { if (err) { console.error(err); return; } }); } } else if (message.content.endsWith('出身')) { keyword = keyword[1].split('出身'); if (keyword[0]) { fc[message.author.id].country = keyword[0]; fs.writeFile('/root/bot/cirno-discord/userinfo.json', JSON.stringify(fc), 'utf8', (err) => { if (err) { console.error(err); return; } }); } } else message.reply('は?'); }); message.reply('わかったわ!'); } else if (user) { var fs = require('fs'); fs.readFile('/root/bot/cirno-discord/userinfo.json', 'utf8', (err, data) => { if (err) throw err; let fc = JSON.parse(data); if (fc[user]) { if (message.content.endsWith('の名前は?')) { if (fc[user].name) message.reply(fc[user].name + 'わよ!'); else message.reply('わかんない。教えてくれていいの?'); } else if (message.content.endsWith('の国は?') || message.content.endsWith('の県は?')) { if (fc[user].country) message.reply(fc[user].country + 'わよ!'); else message.reply('わかんない。教えてくれていいの?'); } else if (message.content.endsWith('は何歳?')) { if (fc[user].age) message.reply(fc[user].age + 'わよ!'); else message.reply('わかんない。教えてくれていいの?'); } else if (message.content.endsWith('の誕生日はいつ?')) { if (fc[user].birthday) message.reply(fc[user].birthday + 'わよ!'); else message.reply('わかんない。教えてくれていいの?'); } } else message.reply('この奴わかんない…'); }); } else if (/自己紹介したいんですが/.test(message.content)) { message.reply("簡単わよ!\nアタイをメンションすると、下記のことを教えてあげてってね!\n・私は【名前】です・\in・私は【数字】歳\n・私は【都道府県・国等】出身\n・私の誕生日は【月日】"); } else message.reply('わからなかった…'); } } });