added timeout to megis command

This commit is contained in:
Joonas 2023-02-08 17:59:41 +02:00
parent 4c9832f56d
commit 4abb89f5ed
1 changed files with 48 additions and 11 deletions

View File

@ -17,11 +17,56 @@ const command = {
Math.floor(Math.random() * Object.keys(megisTypes).length)
];
const user = await prisma.user.upsert({
const user = await prisma.user.findUnique({
where: {
userId: msg.senderUserID,
},
update: {
include: {
megis: true,
},
});
if (!user) {
const createUser = await prisma.user.create({
data: {
userId: msg.senderUserID,
megis: {
create: {
megis: 0,
},
},
},
});
}
if (user) {
if (
new Date().getTime() <
new Date(user.megis.updatedAt).getTime() + 3600000
) {
await client.say(
msg.channelName,
`${
msg.displayName
}, remember kids, only one megis per hour! (on timeout ${Math.floor(
Math.abs(
new Date(user.megis.updatedAt).getTime() +
3600000 -
new Date().getTime()
) /
1000 /
60
)} minutes 🕒 ) `
);
return;
}
}
const updateUser = await prisma.user.update({
where: {
userId: msg.senderUserID,
},
data: {
megis: {
update: {
megis: {
@ -30,14 +75,6 @@ const command = {
},
},
},
create: {
userId: msg.senderUserID,
megis: {
create: {
megis: parseInt(megis),
},
},
},
include: {
megis: true,
},
@ -45,7 +82,7 @@ const command = {
await client.say(
msg.channelName,
`${msg.displayName}, +${megis}! ${megisTypes[megis]} Total megis: ${user.megis.megis}`
`${msg.displayName}, +${megis}! ${megisTypes[megis]} Total megis: ${updateUser.megis.megis}`
);
},
};