MOOver.js/node.js

211 lines
6.2 KiB
JavaScript
Raw Normal View History

2020-11-27 20:31:02 +00:00
const Discord = require('discord.js');
const client = new Discord.Client();
var author = " ";
var storedLink = " ";
var link;
var messageId;
var yes = false;
var linkNo = 0;
var now = new Date().getTime();
var sjl = new Date("2021-03-16").getTime();
var mat = new Date("2021-03-19").getTime();
var dokument = new Date("2021, 3, 5, 13:00").getTime();
var martinovOdpocet = new Date("2020-12-25").getTime();
2020-11-28 00:20:30 +00:00
var petrovOdpocet = new Date("2020, 10, 12, 12:00").getTime();
2020-11-27 20:31:02 +00:00
var remainingSjl = sjl - now;
var remainingMat = mat - now;
var remainingDok = dokument - now;
var remainingMartin = martinovOdpocet - now;
var left = 0;
2020-11-27 21:46:43 +00:00
var ping = 86400;
2020-11-27 20:31:02 +00:00
var countdownChannel;
var first = true;
var setNew = true;
client.once('ready', () => {
console.log('Im online!');
});
client.on('message', message => {
const args = message.content.split(' ');
//storedMessages.push(message.content);
let msg = message.content.toLowerCase();
if (msg.startsWith("countdownchannel") && args.length == 2 && message.mentions.channels.first()){
let countdownId = message.mentions.channels.first().id;
countdownChannel = client.channels.cache.get(countdownId);
if(setNew == true){
var myInterval = setInterval(countdowns, 1000, 1);
setNew == false;
}
else{
}
}
if (message.attachments.first() === undefined) {
}
if (message.content.startsWith("http")) {
author = message.author.id;
storedLink = message.content;
messageId = message.id;
yes = true;
linkNo++;
}
else if (message.attachments.first() != undefined) {
let storedMessage = message.attachments.first();
storedLink = new Discord.MessageAttachment(storedMessage.url);
messageId = message.id;
author = message.author.id;
yes = true;
linkNo++;
}
if (msg.startsWith("henlo") && message.author.bot == false) {
var emojis = ["🥰", "🐄", "🐮", "❤️", "👋", "🤠", "😊"];
let randomNum = Math.floor(Math.random() * 7);
message.channel.send("Henlooo " + message.author.username + " " + emojis[randomNum]);
}
else if (message.mentions.channels.first() && yes) {
if (args.length === 1) {
message.react('🐮');
let channelId = "";
let channelIdArray = message.content.split('');
channelIdArray.splice(0, 2);
channelIdArray.pop();
for (i = 0; i < channelIdArray.length; i++) {
channelId += channelIdArray[i];
}
message.delete({ timeout: 5000 });
var toDelete = message.channel.messages.cache.get(messageId);
toDelete.delete();
let getChannel = client.channels.cache.get(channelId);
getChannel.send("Posted by <@!" + author + ">");
getChannel.send(storedLink);
}
yes = false;
}
else if (msg.startsWith("how ye") && message.author.bot === false) {
let randomNum = Math.floor(Math.random() * 5);
var responses = ["Not bad, how yee?", "MOOdy", "A bit sad 😢", "Good, how yee?", "I'm fine, how yee?"];
message.channel.send(responses[randomNum]);
}
else if (msg.startsWith("tylko jedno")) {
message.channel.send("Koksu pięć gram odlecieć sam");
}
else if (msg.startsWith("time?") || msg.startsWith("left?")){
countdowns(0);
}
});
function countdowns(plus) {
var february = new Date("February, 2021");
remainingSjl = calcTime(sjl - now);
remainingMat = calcTime(mat - now);
remainingDok = calcTime(dokument - now);
remainingMartin = calcTime(martinovOdpocet - now);
2020-11-28 00:20:30 +00:00
remainingPeter = calcTime(petrovOdpocet - now);
2020-11-27 20:31:02 +00:00
const embed = new Discord.MessageEmbed()
.addField("Čas do odovzdania dokumentácie: ", remainingDok)
.addField("", "")
.addField("Čas do maturity zo Slovenského jazyka: ", remainingSjl)
.addField("", "")
.addField("Čas do maturity z Matematiky ", remainingMat)
.addField("", "")
2020-11-27 21:46:43 +00:00
.addField("Martinov nenápadný odpočet: ", remainingMartin)
2020-11-28 00:20:30 +00:00
.addField("", "")
.addField("Cyberpunk 2077: ", remainingPeter)
2020-11-27 21:46:43 +00:00
.setColor("RANDOM");
2020-11-27 20:31:02 +00:00
2020-11-28 00:20:30 +00:00
if(remainingPeter > 0){
embed.spliceFields(8);
}
if (remainingMartin > 0) {
embed.spliceFields(6, 3);
}
2020-11-27 20:31:02 +00:00
left += plus;
if(first == true || plus == 0){
first = false;
if(plus == 0){
var random = Math.floor((Math.random() * 100) + 1);;
if(random == 1){
let responseNo = Math.floor(Math.random() * 3);
var responses = ["idk", "to by si mal vedieť 😉", "nie"];
countdownChannel.send(responses[responseNo]);
}
else{
countdownChannel.send(embed);
}
}
else {
countdownChannel.send(embed);
}
}
if (left == ping) {
left = 0;
countdownChannel.send(embed);
}
};
function calcTime(time){
let returnNo = Math.floor(time / (1000 * 60 * 60 * 24));
if(returnNo > 5 && returnNo > 1)
returnNo += " dni ";
else if(returnNo == 1)
returnNo += " deň ";
else
returnNo += " dní ";
let hours = Math.floor((time % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
if(hours > 5 && returnNo > 1)
returnNo += hours + " hodiny ";
else if(returnNo == 1)
returnNo += hours + " hodina ";
else
returnNo += hours + " hodín ";
let minutes = Math.floor(( time % ( 1000 * 60 * 60)) / (1000 * 60));
if(minutes > 5 && returnNo > 1)
returnNo += minutes + " minúty ";
else if(returnNo == 1)
returnNo += minutes + " minúta ";
else
returnNo += minutes + " minút ";
let seconds = Math.floor(( time % ( 1000 * 60)) / 1000);
if(seconds > 5 && returnNo > 1)
returnNo += seconds + " sekundy ";
else if(returnNo == 1)
returnNo += seconds + " sekunda ";
else
returnNo += seconds + " sekúnd ";
return returnNo;
}
2020-11-28 00:20:30 +00:00
client.login("NzczMTUyNDgzNzMxNzAxODAw.X6FEXA.y3lIt46kWIAAqf7_zb4xyQvqYcQ");