Skip to content

Commit 370f01f

Browse files
author
xyzjesper
committed
Fixed leaderboard message error (#31). Fixed XPDrops XP adding to user. Fixed small voiceXP issue. Minor Bug fixes. bump version.
1 parent 185d858 commit 370f01f

File tree

14 files changed

+87
-55
lines changed

14 files changed

+87
-55
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "disbot",
33
"main": "./.build/startup.js",
4-
"version": "v.1.6.5",
4+
"version": "v.1.6.5.1",
55
"scripts": {
66
"disbot": "npx prisma migrate deploy && node ./.build/src/main/startup.js",
77
"disbotdev": "bun run build && node ./.build/src/main/startup.js",

src/helper/ticketHelper.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,7 @@ export async function ticketHelper(
295295
})
296296

297297
if (!messageData) {
298-
const ticketTemplateMessage = await fetch("https://cdn.xyzhub.link/raw/VqvWD9.json?download=true")
298+
const ticketTemplateMessage = await fetch("https://cdn.xyzify.ing/raw/VqvWD9.json?download=true")
299299
const ticketTemplateMessageData = await ticketTemplateMessage.json()
300300

301301
messageData = {

src/main/placeholder.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,15 @@ export const IMAGE_PLACEHOLDER = {
1111
"{twitch.vod}": "https://twitch.tv/vod.png",
1212
"{youtube.thumbnail}": "https://youtube.com/thumbnail.png",
1313
"{member.avatar}": "https://i.imgur.com/kjEQRRI.png",
14-
"{user.avatar}": "https://cdn.xyzhub.link/u/TbZSAH.png",
15-
"{spotify.episode.image}": "https://cdn.xyzhub.link/u/nM7pNI.png",
16-
"{spotify.author.image}": "https://cdn.xyzhub.link/u/HsqWSk.png",
14+
"{user.avatar}": "https://cdn.xyzify.ing/u/TbZSAH.png",
15+
"{spotify.episode.image}": "https://cdn.xyzify.ing/u/nM7pNI.png",
16+
"{spotify.author.image}": "https://cdn.xyzify.ing/u/HsqWSk.png",
1717
"{polls.image}": "https://i.imgur.com/FHBicGA.png",
18-
"{welcome.image}": "https://cdn.xyzhub.link/u/e3IChB.png",
19-
"{level.rankCard}": "https://cdn.xyzhub.link/u/uFmQ8z.png",
20-
"{level.leaderboard.leaderboardImageHorizontal}": "https://cdn.xyzhub.link/u/dtKeTY.png",
21-
"{level.leaderboard.leaderboardImageDefault}": "https://cdn.xyzhub.link/u/aLvYLD.png",
22-
"{inviter.avatar}": "https://cdn.xyzhub.link/u/7cU4sY.png",
18+
"{welcome.image}": "https://cdn.xyzify.ing/u/e3IChB.png",
19+
"{level.rankCard}": "https://cdn.xyzify.ing/u/uFmQ8z.png",
20+
"{level.leaderboard.leaderboardImageHorizontal}": "https://cdn.xyzify.ing/u/dtKeTY.png",
21+
"{level.leaderboard.leaderboardImageDefault}": "https://cdn.xyzify.ing/u/aLvYLD.png",
22+
"{inviter.avatar}": "https://cdn.xyzify.ing/u/7cU4sY.png",
2323
};
2424

2525
export const TIMESTAMP_PLACEHOLDER = {
@@ -36,7 +36,7 @@ const STATIC_PLACEHOLDERS: Record<string, string> = {
3636
// TODO: This will be used for new Modules!
3737
export function replacePlaceholders(template: string, data: Record<string, any>): string {
3838

39-
let fullPlaceholder = template;
39+
let fullPlaceholder = template.replace(/cdn\.xyzhub\.link/i, "cdn.xyzify.ing");
4040

4141
for (const [key, value] of Object.entries(STATIC_PLACEHOLDERS)) {
4242
if (fullPlaceholder.includes(value)) {

src/modules/leave/events/guildMemberLeave.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ export default {
8888
outlineColor: data.ImageData?.Gradient?.split(",")[0] ?? "#fff"
8989
},
9090
card: {
91-
background: data.ImageData?.Background ?? "https://cdn.xyzhub.link/u/czdZgx.png",
91+
background: data.ImageData?.Background ?? "https://cdn.xyzify.ing/u/czdZgx.png",
9292
blur: 1,
9393
border: true,
9494
rounded: true
@@ -99,7 +99,7 @@ export default {
9999
const withImagePlaceholder = {
100100
...replacements,
101101
leave: {
102-
image: cdnUrl ?? "https://cdn.xyzhub.link/u/ixBzIX.png",
102+
image: cdnUrl ?? "https://cdn.xyzify.ing/u/ixBzIX.png",
103103
},
104104
}
105105

src/modules/level/buttons/level-drop-claim.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ export default {
112112
ClaimedXPDrops: {
113113
push: data.UUID
114114
},
115-
XP: userData.XP + xpRange
115+
XP: (parseInt(userData.XP) + xpRange).toString()
116116
}
117117
})
118118
return await sendDefaultMessage(`-# Claimed XP Drop successfully!`, interaction, true, "reply")

src/modules/level/buttons/level-leaderboard-pagination.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ export default {
4444
return
4545
}
4646
const list = data.Levels.sort((a, b) => {
47-
return b.Level - a.Level;
47+
return (b.Level - a.Level)
4848
}).slice(currentIndex, currentIndex + (data.LeaderboardDisplayAmount == null || data.LeaderboardDisplayAmount == 0 ? 10 : data.LeaderboardDisplayAmount));
4949

5050
const leaderboardImageDefault = await generateLevelLeaderboard(interaction.guild, "default", list)
@@ -54,12 +54,15 @@ export default {
5454
id: interaction.user.id,
5555
name: interaction.user.username,
5656
displayName: interaction.user.displayName,
57-
avatar: interaction.user.displayAvatarURL()
57+
avatar: interaction.user.displayAvatarURL({
58+
extension: "png",
59+
forceStatic: true
60+
}) ?? "https://cdn.discordapp.com/embed/avatars/0.png"
5861
},
5962
level: {
6063
leaderboard: {
61-
leaderboardImageDefault: leaderboardImageDefault,
62-
leaderboardImageHorizontal: leaderboardImageHorizontal,
64+
leaderboardImageDefault: leaderboardImageDefault.replace("cdn.xyzhub.link", "cdn.xyzify.ing"),
65+
leaderboardImageHorizontal: leaderboardImageHorizontal.replace("cdn.xyzhub.link", "cdn.xyzify.ing"),
6366
message: data?.Levels.length < 0 ? list.map((l, index) => {
6467
const user = interaction.guild.members.cache.get(l.UserId);
6568
const rank = index + 1;

src/modules/level/commands/subCommand/level.leaderboard.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ export default {
5757
}
5858

5959
const list = data.Levels.sort((a, b) => {
60-
return b.Level - a.Level;
60+
return (b.Level - a.Level)
6161
}).slice(currentIndex, currentIndex + (data.LeaderboardDisplayAmount == null || data.LeaderboardDisplayAmount == 0 ? 10 : data.LeaderboardDisplayAmount));
6262

6363
const leaderboardImageDefault = await generateLevelLeaderboard(interaction.guild, "default", list)
@@ -67,7 +67,7 @@ export default {
6767
id: interaction.user.id,
6868
name: interaction.user.username,
6969
displayName: interaction.user.displayName,
70-
avatar: interaction.user.displayAvatarURL()
70+
avatar: interaction.user.displayAvatarURL() ?? "https://cdn.discordapp.com/embed/avatars/0.png"
7171
},
7272
level: {
7373
leaderboard: {

src/modules/level/commands/subCommand/level.stats.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ export default {
8484

8585
let message = await database.messageTemplates.findFirst({
8686
where: {
87-
Name: data.LevelSettings.LevelUserInfoMessageTemplate
87+
Name: data.LevelSettings?.LevelUserInfoMessageTemplate ?? ""
8888
}
8989
})
9090

@@ -102,8 +102,8 @@ export default {
102102
},
103103
level: {
104104
rankCard: rankImage,
105-
xp: data.XP,
106-
requiredXp: data.RequiredXp,
105+
xp: Math.round(parseInt(data.XP)),
106+
requiredXp: Math.round(parseInt(data.RequiredXp)),
107107
level: data.Level,
108108
streakDay: data.CurrentStreakDay
109109
}

src/modules/level/events/level-VoiceConnection.ts

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,19 @@ export default {
2525
*/
2626
async execute(oldState: VoiceState, newState: VoiceState, client: ExtendedClient) {
2727

28+
2829
const guild = newState.guild;
29-
const member = newState.member;
30+
const member = newState?.member ?? oldState.member;
3031
const channel = newState.channel as VoiceChannel;
3132

33+
34+
if (!newState.channelId) return
35+
if (client.cache.has(`${guild.id}-level-voice-${member.id}`)) {
36+
(client.cache.get(`${guild.id}-level-voice-${member.id}`).timer as NodeJS.Timeout).close()
37+
client.cache.delete(`${guild.id}-level-voice-${member.id}`)
38+
return
39+
}
40+
3241
const data = await database.levelSettings.findFirst({
3342
include: {
3443
Levels: true,
@@ -42,17 +51,16 @@ export default {
4251
})
4352
if (!data) return
4453
if (!data.IsVoiceXPEnabled) return
45-
const user = await client.users.fetch(newState.member.id)
54+
const user = await client.users.fetch(newState?.member?.id ?? oldState.member.id)
4655
if (user.bot) return
4756
if (!data.VoiceXPCooldown) return
4857

49-
if (client.cooldowns.has(`${guild.id}-level-voice`)) {
50-
const timer = client.cooldowns.get(`${guild.id}-level-voice`) as NodeJS.Timeout
51-
timer.close()
52-
}
53-
5458
const interval = setInterval(async () => {
5559

60+
const levelCache = client.cache.get(`${guild.id}-level-voice-${member.id}`)
61+
if (!levelCache) return
62+
if (member.id != levelCache.userId) return
63+
5664
let userData = await database.levels.findFirst({
5765
where: {
5866
UserId: member.id,
@@ -157,7 +165,10 @@ export default {
157165
)
158166
}, ms(data.VoiceXPCooldown as StringValue))
159167

160-
client.cooldowns.set(`${guild.id}-level-voice`, interval)
168+
client.cache.set(`${guild.id}-level-voice-${member.id}`, {
169+
timer: interval,
170+
userId: member.id
171+
})
161172
}
162173
}
163174

src/modules/level/modals/levels-settings-streaks-message-type-modal.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@ export default {
2626
const input = interaction.fields.getSelectedChannels("channel", true, [ChannelType.GuildText])
2727
for (const channel of input.values()) {
2828

29-
console.log(channel.id)
30-
3129
await database.levelSettings.update({
3230
where: {
3331
GuildId: interaction.guild.id

0 commit comments

Comments
 (0)