aboutsummaryrefslogtreecommitdiff
path: root/src/commands/moulberry-bush
diff options
context:
space:
mode:
authorTymanWasTaken <32660892+tymanwastaken@users.noreply.github.com>2021-05-28 21:51:02 -0600
committerTymanWasTaken <32660892+tymanwastaken@users.noreply.github.com>2021-05-28 21:51:02 -0600
commit1e9e334097702c68d871365fc016aa096d03c491 (patch)
tree65b22d1d529cda850e5c30e9fe19a2504fca2645 /src/commands/moulberry-bush
parent53d8d5e551e9a239fd4c48c7dca4e1f6fb8d81e9 (diff)
downloadtanzanite-1e9e334097702c68d871365fc016aa096d03c491.tar.gz
tanzanite-1e9e334097702c68d871365fc016aa096d03c491.tar.bz2
tanzanite-1e9e334097702c68d871365fc016aa096d03c491.zip
Remove references - caused some issues, comment out some image gen code
Diffstat (limited to 'src/commands/moulberry-bush')
-rw-r--r--src/commands/moulberry-bush/level.ts108
1 files changed, 105 insertions, 3 deletions
diff --git a/src/commands/moulberry-bush/level.ts b/src/commands/moulberry-bush/level.ts
index ab08361..046940a 100644
--- a/src/commands/moulberry-bush/level.ts
+++ b/src/commands/moulberry-bush/level.ts
@@ -5,6 +5,11 @@ import { CommandInteraction } from 'discord.js';
import { User } from 'discord.js';
import { BotCommand } from '../../lib/extensions/BotCommand';
import { Level } from '../../lib/models';
+import canvas from 'canvas';
+import { MessageAttachment } from 'discord.js';
+import { join } from 'path';
+import got from 'got/dist/source';
+import { CanvasProgressBar } from '../../lib/extensions/Util';
export default class LevelCommand extends BotCommand {
constructor() {
@@ -38,24 +43,121 @@ export default class LevelCommand extends BotCommand {
});
}
+ // private simplifyXP(xp: number): string {
+
+ // }
+
+ // private async getImage(user: User): Promise<Buffer> {
+ // // I added comments because this code is impossible to read
+ // const [userLevelRow] = await Level.findOrBuild({
+ // where: {
+ // id: user.id
+ // },
+ // defaults: {
+ // id: user.id
+ // }
+ // });
+ // const userLevel = userLevelRow.level
+ // const currentLevelXP = Level.convertLevelToXp(userLevel);
+ // const currentLevelXPProgress = userLevelRow.xp - currentLevelXP;
+ // const xpForNextLevel =
+ // Level.convertLevelToXp(userLevelRow.level + 1) - currentLevelXP;
+ // // Load roboto font because yes
+ // canvas.registerFont(
+ // join(__dirname, '..', '..', '..', 'Roboto-Regular.ttf'),
+ // {
+ // family: 'Roboto'
+ // }
+ // );
+ // // Create image canvas
+ // const image = canvas.createCanvas(800, 200),
+ // ctx = image.getContext('2d');
+ // // Fill background
+ // ctx.fillStyle = '#00c7eb';
+ // ctx.fillRect(0, 0, image.width, image.height);
+ // // Draw avatar
+ // const avatarBuffer = await got
+ // .get(user.displayAvatarURL({ format: 'png', size: 128 }))
+ // .buffer();
+ // const avatarImage = new canvas.Image();
+ // avatarImage.src = avatarBuffer;
+ // avatarImage.height = 128
+ // avatarImage.width = 128
+ // const imageTopCoord = (image.height / 2) - (avatarImage.height / 2)
+ // ctx.drawImage(avatarImage, imageTopCoord, imageTopCoord);
+ // // Write tag of user
+ // ctx.font = '30px Roboto';
+ // ctx.fillStyle = 'black';
+ // const measuredTag = ctx.measureText(user.tag);
+ // ctx.fillText(user.tag, avatarImage.width + 70, 60);
+ // // Draw line under tag
+ // ctx.fillStyle = 'yellow';
+ // ctx.fillRect(
+ // avatarImage.width + 70,
+ // 65 + measuredTag.actualBoundingBoxDescent,
+ // measuredTag.width,
+ // 3
+ // );
+ // // Draw leveling bar
+ // const fullProgressBar = new CanvasProgressBar(
+ // ctx,
+ // {
+ // x: avatarImage.width + 70,
+ // y: avatarImage.height - 10,
+ // height: 30,
+ // width: 550
+ // },
+ // '#6e6e6e',
+ // 1
+ // );
+ // fullProgressBar.draw();
+ // const progressBar = new CanvasProgressBar(
+ // ctx,
+ // {
+ // x: avatarImage.width + 70,
+ // y: avatarImage.height - 10,
+ // height: 30,
+ // width: 550
+ // },
+ // 'yellow',
+ // currentLevelXPProgress / xpForNextLevel
+ // );
+ // progressBar.draw();
+ // // Draw level data text
+ // ctx.fillStyle = 'black'
+ // ctx.fillText(`Level: ${userLevel} XP: $`, avatarImage.width + 70, avatarImage.height - 20)
+ // // Return image in buffer form
+ // return image.toBuffer();
+ // }
+
private async getResponse(user: User): Promise<string> {
const userLevelRow = await Level.findByPk(user.id);
if (userLevelRow) {
- return `${user ? `${user.tag}'s` : 'Your'} level is ${
- userLevelRow.level
- } (${userLevelRow.xp} XP)`;
+ return `${user ? `${user.tag}'s` : 'Your'} level is ${userLevelRow.level} (${userLevelRow.xp} XP)`;
} else {
return `${user ? `${user.tag} does` : 'You do'} not have a level yet!`;
}
}
async exec(message: Message, { user }: { user?: User }): Promise<void> {
+ // await message.reply(
+ // new MessageAttachment(
+ // await this.getImage(user || message.author),
+ // 'lel.png'
+ // )
+ // );
await message.reply(await this.getResponse(user || message.author));
}
async execSlash(
message: CommandInteraction,
{ user }: { user?: CommandInteractionOption }
): Promise<void> {
+ // await message.reply(
+ // new MessageAttachment(
+ // await this.getImage(user?.user || message.user),
+ // 'lel.png'
+ // )
+ // );
await message.reply(await this.getResponse(user?.user || message.user));
}
}