added timeout to megis command

This commit is contained in:
Joonas 2023-02-08 17:59:41 +02:00
parent 4c9832f56d
commit 4abb89f5ed

View file

@ -17,11 +17,56 @@ const command = {
Math.floor(Math.random() * Object.keys(megisTypes).length) Math.floor(Math.random() * Object.keys(megisTypes).length)
]; ];
const user = await prisma.user.upsert({ const user = await prisma.user.findUnique({
where: { where: {
userId: msg.senderUserID, 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: { megis: {
update: { update: {
megis: { megis: {
@ -30,14 +75,6 @@ const command = {
}, },
}, },
}, },
create: {
userId: msg.senderUserID,
megis: {
create: {
megis: parseInt(megis),
},
},
},
include: { include: {
megis: true, megis: true,
}, },
@ -45,7 +82,7 @@ const command = {
await client.say( await client.say(
msg.channelName, msg.channelName,
`${msg.displayName}, +${megis}! ${megisTypes[megis]} Total megis: ${user.megis.megis}` `${msg.displayName}, +${megis}! ${megisTypes[megis]} Total megis: ${updateUser.megis.megis}`
); );
}, },
}; };