djs-builder 0.5.41 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +140 -303
- package/function/function.js +236 -0
- package/function/log.js +736 -0
- package/handler/helper.js +277 -0
- package/handler/starter.js +335 -0
- package/package.json +10 -42
- package/.tsbuildinfo +0 -1
- package/dist/discord/builder/components/Buttons.d.ts +0 -22
- package/dist/discord/builder/components/Buttons.d.ts.map +0 -1
- package/dist/discord/builder/components/Buttons.js +0 -91
- package/dist/discord/builder/components/Buttons.js.map +0 -1
- package/dist/discord/builder/components/Menus.d.ts +0 -31
- package/dist/discord/builder/components/Menus.d.ts.map +0 -1
- package/dist/discord/builder/components/Menus.js +0 -82
- package/dist/discord/builder/components/Menus.js.map +0 -1
- package/dist/discord/builder/permissions/perms.d.ts +0 -6
- package/dist/discord/builder/permissions/perms.d.ts.map +0 -1
- package/dist/discord/builder/permissions/perms.js +0 -66
- package/dist/discord/builder/permissions/perms.js.map +0 -1
- package/dist/discord/builder/system/Pagination.d.ts +0 -70
- package/dist/discord/builder/system/Pagination.d.ts.map +0 -1
- package/dist/discord/builder/system/Pagination.js +0 -227
- package/dist/discord/builder/system/Pagination.js.map +0 -1
- package/dist/discord/builder/system/collectors.d.ts +0 -27
- package/dist/discord/builder/system/collectors.d.ts.map +0 -1
- package/dist/discord/builder/system/collectors.js +0 -137
- package/dist/discord/builder/system/collectors.js.map +0 -1
- package/dist/discord/builder/utils.d.ts +0 -5
- package/dist/discord/builder/utils.d.ts.map +0 -1
- package/dist/discord/builder/utils.js +0 -10
- package/dist/discord/builder/utils.js.map +0 -1
- package/dist/discord/events-handler/eventLoader.d.ts +0 -13
- package/dist/discord/events-handler/eventLoader.d.ts.map +0 -1
- package/dist/discord/events-handler/eventLoader.js +0 -169
- package/dist/discord/events-handler/eventLoader.js.map +0 -1
- package/dist/discord/events-handler/events.d.ts +0 -8
- package/dist/discord/events-handler/events.d.ts.map +0 -1
- package/dist/discord/events-handler/events.js +0 -186
- package/dist/discord/events-handler/events.js.map +0 -1
- package/dist/discord/events-handler/login.d.ts +0 -9
- package/dist/discord/events-handler/login.d.ts.map +0 -1
- package/dist/discord/events-handler/login.js +0 -273
- package/dist/discord/events-handler/login.js.map +0 -1
- package/dist/discord/events-handler/prefix-register.d.ts +0 -23
- package/dist/discord/events-handler/prefix-register.d.ts.map +0 -1
- package/dist/discord/events-handler/prefix-register.js +0 -109
- package/dist/discord/events-handler/prefix-register.js.map +0 -1
- package/dist/discord/events-handler/prefix-responder.d.ts +0 -5
- package/dist/discord/events-handler/prefix-responder.d.ts.map +0 -1
- package/dist/discord/events-handler/prefix-responder.js +0 -155
- package/dist/discord/events-handler/prefix-responder.js.map +0 -1
- package/dist/discord/events-handler/prefixLoader.d.ts +0 -7
- package/dist/discord/events-handler/prefixLoader.d.ts.map +0 -1
- package/dist/discord/events-handler/prefixLoader.js +0 -74
- package/dist/discord/events-handler/prefixLoader.js.map +0 -1
- package/dist/discord/events-handler/slash-register.d.ts +0 -4
- package/dist/discord/events-handler/slash-register.d.ts.map +0 -1
- package/dist/discord/events-handler/slash-register.js +0 -85
- package/dist/discord/events-handler/slash-register.js.map +0 -1
- package/dist/discord/events-handler/slash-responder.d.ts +0 -3
- package/dist/discord/events-handler/slash-responder.d.ts.map +0 -1
- package/dist/discord/events-handler/slash-responder.js +0 -112
- package/dist/discord/events-handler/slash-responder.js.map +0 -1
- package/dist/discord/events-handler/slashLoader.d.ts +0 -7
- package/dist/discord/events-handler/slashLoader.d.ts.map +0 -1
- package/dist/discord/events-handler/slashLoader.js +0 -94
- package/dist/discord/events-handler/slashLoader.js.map +0 -1
- package/dist/discord/events-handler/starter.d.ts +0 -6
- package/dist/discord/events-handler/starter.d.ts.map +0 -1
- package/dist/discord/events-handler/starter.js +0 -85
- package/dist/discord/events-handler/starter.js.map +0 -1
- package/dist/discord/functions/anticrash.d.ts +0 -3
- package/dist/discord/functions/anticrash.d.ts.map +0 -1
- package/dist/discord/functions/anticrash.js +0 -55
- package/dist/discord/functions/anticrash.js.map +0 -1
- package/dist/discord/functions/devLogs.d.ts +0 -2
- package/dist/discord/functions/devLogs.d.ts.map +0 -1
- package/dist/discord/functions/devLogs.js +0 -137
- package/dist/discord/functions/devLogs.js.map +0 -1
- package/dist/discord/functions/logger.d.ts +0 -5
- package/dist/discord/functions/logger.d.ts.map +0 -1
- package/dist/discord/functions/logger.js +0 -57
- package/dist/discord/functions/logger.js.map +0 -1
- package/dist/discord/functions/mongoDb.d.ts +0 -4
- package/dist/discord/functions/mongoDb.d.ts.map +0 -1
- package/dist/discord/functions/mongoDb.js +0 -39
- package/dist/discord/functions/mongoDb.js.map +0 -1
- package/dist/discord/functions/similarity.d.ts +0 -3
- package/dist/discord/functions/similarity.d.ts.map +0 -1
- package/dist/discord/functions/similarity.js +0 -56
- package/dist/discord/functions/similarity.js.map +0 -1
- package/dist/discord/functions/terminal.d.ts +0 -2
- package/dist/discord/functions/terminal.d.ts.map +0 -1
- package/dist/discord/functions/terminal.js +0 -127
- package/dist/discord/functions/terminal.js.map +0 -1
- package/dist/discord/functions/utils.d.ts +0 -5
- package/dist/discord/functions/utils.d.ts.map +0 -1
- package/dist/discord/functions/utils.js +0 -11
- package/dist/discord/functions/utils.js.map +0 -1
- package/dist/discord/functions/versedb.d.ts +0 -3
- package/dist/discord/functions/versedb.d.ts.map +0 -1
- package/dist/discord/functions/versedb.js +0 -21
- package/dist/discord/functions/versedb.js.map +0 -1
- package/dist/discord/games/X-O.d.ts +0 -20
- package/dist/discord/games/X-O.d.ts.map +0 -1
- package/dist/discord/games/X-O.js +0 -166
- package/dist/discord/games/X-O.js.map +0 -1
- package/dist/discord/games/rps.d.ts +0 -21
- package/dist/discord/games/rps.d.ts.map +0 -1
- package/dist/discord/games/rps.js +0 -99
- package/dist/discord/games/rps.js.map +0 -1
- package/dist/discord/types/starter.d.ts +0 -144
- package/dist/discord/types/starter.d.ts.map +0 -1
- package/dist/discord/types/starter.js +0 -3
- package/dist/discord/types/starter.js.map +0 -1
- package/dist/discord/types/utils.d.ts +0 -3
- package/dist/discord/types/utils.d.ts.map +0 -1
- package/dist/discord/types/utils.js +0 -3
- package/dist/discord/types/utils.js.map +0 -1
- package/dist/discord/utils.d.ts +0 -15
- package/dist/discord/utils.d.ts.map +0 -1
- package/dist/discord/utils.js +0 -41
- package/dist/discord/utils.js.map +0 -1
- package/dist/index.d.ts +0 -4
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -71
- package/dist/index.js.map +0 -1
- package/lib/discord/builder/components/Buttons.ts +0 -123
- package/lib/discord/builder/components/Menus.ts +0 -106
- package/lib/discord/builder/permissions/perms.ts +0 -66
- package/lib/discord/builder/system/Pagination.ts +0 -323
- package/lib/discord/builder/system/collectors.ts +0 -197
- package/lib/discord/builder/utils.ts +0 -9
- package/lib/discord/events-handler/eventLoader.ts +0 -166
- package/lib/discord/events-handler/events.ts +0 -160
- package/lib/discord/events-handler/login.ts +0 -265
- package/lib/discord/events-handler/prefix-register.ts +0 -117
- package/lib/discord/events-handler/prefix-responder.ts +0 -176
- package/lib/discord/events-handler/prefixLoader.ts +0 -83
- package/lib/discord/events-handler/slash-register.ts +0 -81
- package/lib/discord/events-handler/slash-responder.ts +0 -136
- package/lib/discord/events-handler/slashLoader.ts +0 -104
- package/lib/discord/events-handler/starter.ts +0 -85
- package/lib/discord/functions/anticrash.ts +0 -60
- package/lib/discord/functions/devLogs.ts +0 -128
- package/lib/discord/functions/logger.ts +0 -58
- package/lib/discord/functions/mongoDb.ts +0 -38
- package/lib/discord/functions/similarity.ts +0 -70
- package/lib/discord/functions/terminal.ts +0 -162
- package/lib/discord/functions/utils.ts +0 -4
- package/lib/discord/functions/versedb.ts +0 -17
- package/lib/discord/types/starter.ts +0 -158
- package/lib/discord/types/utils.ts +0 -2
- package/lib/discord/utils.ts +0 -17
- package/lib/index.ts +0 -37
- package/tsconfig.json +0 -21
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"similarity.js","sourceRoot":"","sources":["../../../lib/discord/functions/similarity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../../lib/discord/functions/terminal.ts"],"names":[],"mappings":"AAoBA,wBAAsB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CA6IvE"}
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.terminalLogs = terminalLogs;
|
|
7
|
-
const colorette_1 = require("colorette");
|
|
8
|
-
const cli_table_1 = __importDefault(require("cli-table"));
|
|
9
|
-
const fs_1 = __importDefault(require("fs"));
|
|
10
|
-
const path_1 = __importDefault(require("path"));
|
|
11
|
-
const figlet_1 = __importDefault(require("figlet"));
|
|
12
|
-
async function showLoadingBar(duration) {
|
|
13
|
-
const steps = [15, 30, 70, 85, 95, 100];
|
|
14
|
-
const interval = duration / steps.length;
|
|
15
|
-
for (const step of steps) {
|
|
16
|
-
process.stdout.write(`\r${(0, colorette_1.cyanBright)('Loading... ')}${'█'.repeat(step / 10)}${'░'.repeat(10 - step / 10)} ${step}%`);
|
|
17
|
-
await new Promise(resolve => setTimeout(resolve, interval));
|
|
18
|
-
}
|
|
19
|
-
process.stdout.write('\r'.padEnd(50) + '\r');
|
|
20
|
-
}
|
|
21
|
-
async function terminalLogs(client, bot) {
|
|
22
|
-
const { user, prefixSize = 0, slashSize = 0, eventSize = 0 } = client;
|
|
23
|
-
const totalCommands = slashSize + prefixSize;
|
|
24
|
-
const totalGuilds = client.guilds.cache.size;
|
|
25
|
-
const totalMembers = client.guilds.cache.reduce((acc, guild) => acc + guild.memberCount, 0);
|
|
26
|
-
function getProjectSize(dir) {
|
|
27
|
-
let size = 0;
|
|
28
|
-
const files = fs_1.default.readdirSync(dir, { withFileTypes: true });
|
|
29
|
-
files.forEach(file => {
|
|
30
|
-
const filePath = path_1.default.join(dir, file.name);
|
|
31
|
-
if (file.isDirectory() && file.name !== 'node_modules') {
|
|
32
|
-
size += getProjectSize(filePath);
|
|
33
|
-
}
|
|
34
|
-
else if (file.isFile()) {
|
|
35
|
-
size += fs_1.default.statSync(filePath).size;
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
return size;
|
|
39
|
-
}
|
|
40
|
-
function findProjectRoot() {
|
|
41
|
-
let currentDir = __dirname;
|
|
42
|
-
while (!fs_1.default.existsSync(path_1.default.join(currentDir, 'package.json'))) {
|
|
43
|
-
currentDir = path_1.default.dirname(currentDir);
|
|
44
|
-
}
|
|
45
|
-
return currentDir;
|
|
46
|
-
}
|
|
47
|
-
const projectPath = findProjectRoot();
|
|
48
|
-
const projectSize = getProjectSize(projectPath);
|
|
49
|
-
await showLoadingBar(3000);
|
|
50
|
-
const colors = [
|
|
51
|
-
'\x1b[34m', // Navy Blue
|
|
52
|
-
'\x1b[36m', // Light Blue
|
|
53
|
-
'\x1b[90m', // Dark Gray
|
|
54
|
-
'\x1b[35m' // Magenta
|
|
55
|
-
];
|
|
56
|
-
const reset = '\x1b[0m'; // Reset color code
|
|
57
|
-
function printFigletText(text, font, colorArray, width, padding = 0, verticalPadding = 0) {
|
|
58
|
-
// @ts-ignore
|
|
59
|
-
figlet_1.default.text(text, { font, width }, (err, data) => {
|
|
60
|
-
if (err) {
|
|
61
|
-
console.log('Something went wrong...');
|
|
62
|
-
console.dir(err);
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
const lines = data?.split('\n');
|
|
66
|
-
const coloredLines = lines?.map((line, index) => {
|
|
67
|
-
const color = colorArray[index % colorArray.length];
|
|
68
|
-
const paddedLine = ' '.repeat(padding) + line;
|
|
69
|
-
return `${color}${paddedLine}${reset}`;
|
|
70
|
-
});
|
|
71
|
-
const validVerticalPadding = Math.max(verticalPadding, 0);
|
|
72
|
-
const outputLines = Array(validVerticalPadding).fill('').concat(coloredLines).join('\n');
|
|
73
|
-
console.log(outputLines);
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
const secondText = 'djs-builder';
|
|
77
|
-
const secondFont = 'Small Slant';
|
|
78
|
-
const secondColor = colors[2];
|
|
79
|
-
const horizontalPadding = 50;
|
|
80
|
-
const verticalPadding = 2000;
|
|
81
|
-
if (bot.logs.waterMark) {
|
|
82
|
-
printFigletText(secondText, secondFont, [secondColor], 50, horizontalPadding, -verticalPadding);
|
|
83
|
-
printFigletText(user.username, '3D-ASCII', colors, 100);
|
|
84
|
-
}
|
|
85
|
-
await new Promise(resolve => setTimeout(resolve, 2000));
|
|
86
|
-
const botStatesTable = new cli_table_1.default({
|
|
87
|
-
head: [(0, colorette_1.blue)('# Bot States')],
|
|
88
|
-
colWidths: [30, 40],
|
|
89
|
-
style: { 'padding-left': 1, 'padding-right': 1 }
|
|
90
|
-
});
|
|
91
|
-
botStatesTable.push([(0, colorette_1.yellowBright)('Bot Name'), user.username], [(0, colorette_1.greenBright)('Prefix Count'), prefixSize], [(0, colorette_1.red)('Slash Command Count'), slashSize], [(0, colorette_1.cyanBright)('Total Commands'), totalCommands], [(0, colorette_1.magentaBright)('Event Count'), eventSize]);
|
|
92
|
-
const botInfoTable = new cli_table_1.default({
|
|
93
|
-
head: [(0, colorette_1.blue)('# Bot Info')],
|
|
94
|
-
colWidths: [30, 50],
|
|
95
|
-
style: { 'padding-left': 1, 'padding-right': 1 }
|
|
96
|
-
});
|
|
97
|
-
if (client.presence?.status) {
|
|
98
|
-
botInfoTable.push([(0, colorette_1.yellowBright)('Status'), client.presence.status]);
|
|
99
|
-
}
|
|
100
|
-
if (bot.Status?.activities && bot.Status.activities.length > 0) {
|
|
101
|
-
botInfoTable.push([(0, colorette_1.cyanBright)('Activity'), bot.Status.activities[0]]);
|
|
102
|
-
}
|
|
103
|
-
if (bot.BotInfo?.botInvite) {
|
|
104
|
-
botInfoTable.push([(0, colorette_1.cyanBright)('Bot Invite'), bot.BotInfo.botInvite]);
|
|
105
|
-
}
|
|
106
|
-
botInfoTable.push([(0, colorette_1.red)('Guilds Count'), totalGuilds], [(0, colorette_1.redBright)('Members Count'), totalMembers]);
|
|
107
|
-
if (bot.Database?.verse) {
|
|
108
|
-
botInfoTable.push([(0, colorette_1.gray)('Bot Database'), 'VerseDb']);
|
|
109
|
-
}
|
|
110
|
-
else if (bot.Database?.mongo) {
|
|
111
|
-
botInfoTable.push([(0, colorette_1.greenBright)('Bot Database'), 'MongoDb']);
|
|
112
|
-
}
|
|
113
|
-
botInfoTable.push([(0, colorette_1.redBright)('Bot Size'), `${(projectSize / (1024 * 1024)).toFixed(2)} MB`]);
|
|
114
|
-
if (client.user?.displayAvatarURL()) {
|
|
115
|
-
botInfoTable.push([(0, colorette_1.blueBright)('AvatarURL'), client.user.displayAvatarURL()]);
|
|
116
|
-
}
|
|
117
|
-
if (bot.BotInfo?.ownerId) {
|
|
118
|
-
botInfoTable.push([(0, colorette_1.cyan)('Owner'), bot.BotInfo.ownerId]);
|
|
119
|
-
}
|
|
120
|
-
if (client.readyTimestamp) {
|
|
121
|
-
const loggedInAt = new Date(client.readyTimestamp).toLocaleString();
|
|
122
|
-
botInfoTable.push([(0, colorette_1.yellowBright)('Logged In At'), loggedInAt]);
|
|
123
|
-
}
|
|
124
|
-
console.log(`\n${(0, colorette_1.blueBright)('Bot States')}\n${botStatesTable.toString()}\n`);
|
|
125
|
-
console.log(`${(0, colorette_1.blueBright)('Bot Info')}\n${botInfoTable.toString()}\n`);
|
|
126
|
-
}
|
|
127
|
-
//# sourceMappingURL=terminal.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../../lib/discord/functions/terminal.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../lib/discord/functions/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.verseConnect = exports.getDb = exports.mongoConnect = exports.getSimilarCommands = void 0;
|
|
4
|
-
const similarity_1 = require("./similarity");
|
|
5
|
-
Object.defineProperty(exports, "getSimilarCommands", { enumerable: true, get: function () { return similarity_1.getSimilarCommands; } });
|
|
6
|
-
const mongoDb_1 = require("./mongoDb");
|
|
7
|
-
Object.defineProperty(exports, "mongoConnect", { enumerable: true, get: function () { return mongoDb_1.mongoConnect; } });
|
|
8
|
-
Object.defineProperty(exports, "getDb", { enumerable: true, get: function () { return mongoDb_1.getDb; } });
|
|
9
|
-
const versedb_1 = require("./versedb");
|
|
10
|
-
Object.defineProperty(exports, "verseConnect", { enumerable: true, get: function () { return versedb_1.verseConnect; } });
|
|
11
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../lib/discord/functions/utils.ts"],"names":[],"mappings":";;;AAAA,6CAAkD;AAGzC,mGAHA,+BAAkB,OAGA;AAF3B,uCAAgD;AAEnB,6FAFpB,sBAAY,OAEoB;AAAE,sFAFpB,eAAK,OAEoB;AADhD,uCAAwC;AACU,6FADzC,sBAAY,OACyC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"versedb.d.ts","sourceRoot":"","sources":["../../../lib/discord/functions/versedb.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,wBAAsB,YAAY,CAAC,OAAO,EAAE,OAAO,uCAalD"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.verseConnect = verseConnect;
|
|
7
|
-
const verse_db_1 = __importDefault(require("verse.db"));
|
|
8
|
-
async function verseConnect(options) {
|
|
9
|
-
const connection = {
|
|
10
|
-
adapter: options.adapterType,
|
|
11
|
-
dataPath: options.path,
|
|
12
|
-
secure: { enable: options.secure?.enable, secret: options.secure?.secret || 'djs-builder' },
|
|
13
|
-
devLogs: {
|
|
14
|
-
enable: options.dev.enable,
|
|
15
|
-
path: options.dev.logsPath || ''
|
|
16
|
-
}
|
|
17
|
-
};
|
|
18
|
-
const db = new verse_db_1.default.connect(connection);
|
|
19
|
-
return db;
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=versedb.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"versedb.js","sourceRoot":"","sources":["../../../lib/discord/functions/versedb.ts"],"names":[],"mappings":";;;;;AAGA,oCAaC;AAhBD,wDAA+B;AAGxB,KAAK,UAAU,YAAY,CAAC,OAAgB;IAC/C,MAAM,UAAU,GAAG;QACf,OAAO,EAAE,OAAO,CAAC,WAAW;QAC5B,QAAQ,EAAE,OAAO,CAAC,IAAI;QACtB,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,IAAI,aAAa,EAAE;QAC3F,OAAO,EAAE;YACL,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM;YAC1B,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE;SACnC;KACJ,CAAC;IAEF,MAAM,EAAE,GAAG,IAAI,kBAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IAC1C,OAAO,EAAE,CAAC;AACd,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { CommandInteraction, Message } from 'discord.js';
|
|
2
|
-
type Interaction = CommandInteraction | Message;
|
|
3
|
-
export declare class TicTacToe {
|
|
4
|
-
private board;
|
|
5
|
-
private currentPlayer;
|
|
6
|
-
private gameEnded;
|
|
7
|
-
private createButton;
|
|
8
|
-
players({ interaction, challengerId, }: {
|
|
9
|
-
interaction: Interaction;
|
|
10
|
-
challengerId: string;
|
|
11
|
-
}): Promise<void>;
|
|
12
|
-
private updateGameMessage;
|
|
13
|
-
private drawBoard;
|
|
14
|
-
private drawSymbol;
|
|
15
|
-
private checkWinner;
|
|
16
|
-
private isBoardFull;
|
|
17
|
-
private displayResults;
|
|
18
|
-
}
|
|
19
|
-
export {};
|
|
20
|
-
//# sourceMappingURL=X-O.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"X-O.d.ts","sourceRoot":"","sources":["../../../lib/discord/games/X-O.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,kBAAkB,EAAE,OAAO,EAAkC,MAAM,YAAY,CAAC;AAGxI,KAAK,WAAW,GAAG,kBAAkB,GAAG,OAAO,CAAC;AAEhD,qBAAa,SAAS;IAClB,OAAO,CAAC,KAAK,CAIX;IACF,OAAO,CAAC,aAAa,CAAO;IAC5B,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,YAAY;IAQP,OAAO,CAAC,EACjB,WAAW,EACX,YAAY,GACf,EAAE;QACC,WAAW,EAAE,WAAW,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,IAAI,CAAC;YAsFH,iBAAiB;YAuBjB,SAAS;IAgCvB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,WAAW;IAqBnB,OAAO,CAAC,WAAW;YAIL,cAAc;CAqB/B"}
|
|
@@ -1,166 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TicTacToe = void 0;
|
|
4
|
-
const discord_js_1 = require("discord.js");
|
|
5
|
-
const canvas_1 = require("@napi-rs/canvas");
|
|
6
|
-
class TicTacToe {
|
|
7
|
-
board = [
|
|
8
|
-
['', '', ''],
|
|
9
|
-
['', '', ''],
|
|
10
|
-
['', '', ''],
|
|
11
|
-
];
|
|
12
|
-
currentPlayer = 'X';
|
|
13
|
-
gameEnded = false;
|
|
14
|
-
createButton(cellId) {
|
|
15
|
-
return new discord_js_1.ButtonBuilder()
|
|
16
|
-
.setCustomId(cellId)
|
|
17
|
-
.setLabel(' ')
|
|
18
|
-
.setStyle(discord_js_1.ButtonStyle.Primary)
|
|
19
|
-
.setDisabled(this.gameEnded);
|
|
20
|
-
}
|
|
21
|
-
async players({ interaction, challengerId, }) {
|
|
22
|
-
const userId = 'user' in interaction ? interaction.user.id : interaction.author.id;
|
|
23
|
-
const gameEmbed = new discord_js_1.EmbedBuilder()
|
|
24
|
-
.setTitle('Tic-Tac-Toe')
|
|
25
|
-
.setDescription(`<@${userId}> (**X**) vs. <@${challengerId}> (**O**)\nIt's <@${userId}>'s turn!`)
|
|
26
|
-
.setColor('DarkNavy');
|
|
27
|
-
const row1 = new discord_js_1.ActionRowBuilder().addComponents(this.createButton('0-0'), this.createButton('0-1'), this.createButton('0-2'));
|
|
28
|
-
const row2 = new discord_js_1.ActionRowBuilder().addComponents(this.createButton('1-0'), this.createButton('1-1'), this.createButton('1-2'));
|
|
29
|
-
const row3 = new discord_js_1.ActionRowBuilder().addComponents(this.createButton('2-0'), this.createButton('2-1'), this.createButton('2-2'));
|
|
30
|
-
const canvasBuffer = await this.drawBoard();
|
|
31
|
-
const gameMessage = 'user' in interaction
|
|
32
|
-
? await interaction.reply({
|
|
33
|
-
embeds: [gameEmbed],
|
|
34
|
-
files: [new discord_js_1.AttachmentBuilder(canvasBuffer, { name: 'tictactoe.png' })],
|
|
35
|
-
components: [row1, row2, row3],
|
|
36
|
-
fetchReply: true,
|
|
37
|
-
})
|
|
38
|
-
: await interaction.reply({
|
|
39
|
-
embeds: [gameEmbed],
|
|
40
|
-
files: [new discord_js_1.AttachmentBuilder(canvasBuffer, { name: 'tictactoe.png' })],
|
|
41
|
-
components: [row1, row2, row3],
|
|
42
|
-
});
|
|
43
|
-
const filter = (btnInteraction) => {
|
|
44
|
-
return [userId, challengerId].includes(btnInteraction.user.id) && !this.gameEnded;
|
|
45
|
-
};
|
|
46
|
-
const collector = gameMessage.createMessageComponentCollector({
|
|
47
|
-
filter,
|
|
48
|
-
time: 60000,
|
|
49
|
-
});
|
|
50
|
-
collector.on('collect', async (btnInteraction) => {
|
|
51
|
-
const [row, col] = btnInteraction.customId.split('-').map(Number);
|
|
52
|
-
if (this.board[row][col] !== '') {
|
|
53
|
-
await btnInteraction.reply({ content: 'This cell is already taken!', ephemeral: true });
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
this.board[row][col] = this.currentPlayer;
|
|
57
|
-
const player = this.currentPlayer === 'X' ? userId : challengerId;
|
|
58
|
-
this.currentPlayer = this.currentPlayer === 'X' ? 'O' : 'X';
|
|
59
|
-
const winner = this.checkWinner();
|
|
60
|
-
if (winner || this.isBoardFull()) {
|
|
61
|
-
this.gameEnded = true;
|
|
62
|
-
collector.stop();
|
|
63
|
-
await this.displayResults(interaction, winner, userId, challengerId);
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
await this.updateGameMessage(btnInteraction, userId, challengerId, row1, row2, row3);
|
|
67
|
-
}
|
|
68
|
-
});
|
|
69
|
-
collector.on('end', async (_collected, reason) => {
|
|
70
|
-
if (reason === 'time' && !this.gameEnded) {
|
|
71
|
-
const endMessage = 'The game has ended due to inactivity!';
|
|
72
|
-
if ('editReply' in interaction) {
|
|
73
|
-
await interaction.editReply({ content: endMessage, components: [] });
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
await interaction.channel?.send({ content: endMessage });
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
async updateGameMessage(btnInteraction, userId, challengerId, row1, row2, row3) {
|
|
82
|
-
const canvasBuffer = await this.drawBoard();
|
|
83
|
-
const nextPlayer = this.currentPlayer === 'X' ? userId : challengerId;
|
|
84
|
-
const updatedEmbed = new discord_js_1.EmbedBuilder()
|
|
85
|
-
.setTitle('Tic-Tac-Toe')
|
|
86
|
-
.setDescription(`It's <@${nextPlayer}>'s turn!`)
|
|
87
|
-
.setColor('DarkNavy');
|
|
88
|
-
await btnInteraction.update({
|
|
89
|
-
embeds: [updatedEmbed],
|
|
90
|
-
files: [new discord_js_1.AttachmentBuilder(canvasBuffer, { name: 'tictactoe.png' })],
|
|
91
|
-
components: [row1, row2, row3],
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
async drawBoard() {
|
|
95
|
-
const canvas = (0, canvas_1.createCanvas)(300, 300);
|
|
96
|
-
const ctx = canvas.getContext('2d');
|
|
97
|
-
ctx.strokeStyle = '#000000';
|
|
98
|
-
ctx.lineWidth = 5;
|
|
99
|
-
ctx.beginPath();
|
|
100
|
-
ctx.moveTo(0, 100);
|
|
101
|
-
ctx.lineTo(300, 100);
|
|
102
|
-
ctx.moveTo(0, 200);
|
|
103
|
-
ctx.lineTo(300, 200);
|
|
104
|
-
ctx.stroke();
|
|
105
|
-
ctx.moveTo(100, 0);
|
|
106
|
-
ctx.lineTo(100, 300);
|
|
107
|
-
ctx.moveTo(200, 0);
|
|
108
|
-
ctx.lineTo(200, 300);
|
|
109
|
-
ctx.stroke();
|
|
110
|
-
for (let row = 0; row < 3; row++) {
|
|
111
|
-
for (let col = 0; col < 3; col++) {
|
|
112
|
-
const symbol = this.board[row][col];
|
|
113
|
-
if (symbol) {
|
|
114
|
-
this.drawSymbol(ctx, symbol, row, col);
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
return canvas.toBuffer('image/png');
|
|
119
|
-
}
|
|
120
|
-
drawSymbol(ctx, symbol, row, col) {
|
|
121
|
-
ctx.font = '80px Arial';
|
|
122
|
-
ctx.textAlign = 'center';
|
|
123
|
-
ctx.textBaseline = 'middle';
|
|
124
|
-
const x = col * 100 + 50;
|
|
125
|
-
const y = row * 100 + 50;
|
|
126
|
-
ctx.fillText(symbol, x, y);
|
|
127
|
-
}
|
|
128
|
-
checkWinner() {
|
|
129
|
-
const winningPatterns = [
|
|
130
|
-
[[0, 0], [0, 1], [0, 2]],
|
|
131
|
-
[[1, 0], [1, 1], [1, 2]],
|
|
132
|
-
[[2, 0], [2, 1], [2, 2]],
|
|
133
|
-
[[0, 0], [1, 0], [2, 0]],
|
|
134
|
-
[[0, 1], [1, 1], [2, 1]],
|
|
135
|
-
[[0, 2], [1, 2], [2, 2]],
|
|
136
|
-
[[0, 0], [1, 1], [2, 2]],
|
|
137
|
-
[[0, 2], [1, 1], [2, 0]],
|
|
138
|
-
];
|
|
139
|
-
for (const pattern of winningPatterns) {
|
|
140
|
-
const [a, b, c] = pattern;
|
|
141
|
-
if (this.board[a[0]][a[1]] && this.board[a[0]][a[1]] === this.board[b[0]][b[1]] && this.board[a[0]][a[1]] === this.board[c[0]][c[1]]) {
|
|
142
|
-
return this.board[a[0]][a[1]];
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
return null;
|
|
146
|
-
}
|
|
147
|
-
isBoardFull() {
|
|
148
|
-
return this.board.flat().every(cell => cell !== '');
|
|
149
|
-
}
|
|
150
|
-
async displayResults(interaction, winner, userId, challengerId) {
|
|
151
|
-
const resultEmbed = new discord_js_1.EmbedBuilder()
|
|
152
|
-
.setTitle('Tic-Tac-Toe Results')
|
|
153
|
-
.setDescription(winner
|
|
154
|
-
? `<@${winner}> wins!\n<@${userId}> vs. <@${challengerId}>`
|
|
155
|
-
: "It's a tie!\n<@${userId}> vs. <@${challengerId}>")
|
|
156
|
-
.setColor('DarkNavy');
|
|
157
|
-
if ('editReply' in interaction) {
|
|
158
|
-
await interaction.editReply({ embeds: [resultEmbed], components: [] });
|
|
159
|
-
}
|
|
160
|
-
else {
|
|
161
|
-
await interaction.channel?.send({ embeds: [resultEmbed], components: [] });
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
exports.TicTacToe = TicTacToe;
|
|
166
|
-
//# sourceMappingURL=X-O.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"X-O.js","sourceRoot":"","sources":["../../../lib/discord/games/X-O.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { CommandInteraction, Message } from 'discord.js';
|
|
2
|
-
type Interaction = CommandInteraction | Message;
|
|
3
|
-
export declare class RPS {
|
|
4
|
-
private playerChoices;
|
|
5
|
-
private resultData;
|
|
6
|
-
players({ interaction, challengerId, }: {
|
|
7
|
-
interaction: Interaction;
|
|
8
|
-
challengerId: string;
|
|
9
|
-
}): Promise<void>;
|
|
10
|
-
private displayResults;
|
|
11
|
-
private getResult;
|
|
12
|
-
results(): {
|
|
13
|
-
userId: string;
|
|
14
|
-
challengerId: string;
|
|
15
|
-
results: {
|
|
16
|
-
[key: string]: boolean;
|
|
17
|
-
};
|
|
18
|
-
} | null;
|
|
19
|
-
}
|
|
20
|
-
export {};
|
|
21
|
-
//# sourceMappingURL=rps.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rps.d.ts","sourceRoot":"","sources":["../../../lib/discord/games/rps.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,kBAAkB,EAClB,OAAO,EAEV,MAAM,YAAY,CAAC;AAEpB,KAAK,WAAW,GAAG,kBAAkB,GAAG,OAAO,CAAC;AAEhD,qBAAa,GAAG;IACZ,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,UAAU,CAA8F;IAEnG,OAAO,CAAC,EACjB,WAAW,EACX,YAAY,GACf,EAAE;QACC,WAAW,EAAE,WAAW,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,IAAI,CAAC;YA+DH,cAAc;IA6B5B,OAAO,CAAC,SAAS;IAYV,OAAO;;;;;;;CAUjB"}
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RPS = void 0;
|
|
4
|
-
const discord_js_1 = require("discord.js");
|
|
5
|
-
class RPS {
|
|
6
|
-
playerChoices = new Map();
|
|
7
|
-
resultData = null;
|
|
8
|
-
async players({ interaction, challengerId, }) {
|
|
9
|
-
const userId = 'user' in interaction ? interaction.user.id : interaction.author.id;
|
|
10
|
-
const duelEmbed = new discord_js_1.EmbedBuilder()
|
|
11
|
-
.setTitle('Rock-Paper-Scissors Duel!')
|
|
12
|
-
.setDescription(`<@${challengerId}>, you have been challenged to a duel of Rock-Paper-Scissors by <@${userId}>. Make your choice!`)
|
|
13
|
-
.setColor('DarkNavy');
|
|
14
|
-
const row = new discord_js_1.ActionRowBuilder().addComponents(new discord_js_1.ButtonBuilder().setCustomId('rock').setLabel('🪨 Rock').setStyle(discord_js_1.ButtonStyle.Primary), new discord_js_1.ButtonBuilder().setCustomId('paper').setLabel('📄 Paper').setStyle(discord_js_1.ButtonStyle.Primary), new discord_js_1.ButtonBuilder().setCustomId('scissors').setLabel('✂️ Scissors').setStyle(discord_js_1.ButtonStyle.Primary));
|
|
15
|
-
const duelMessage = 'user' in interaction
|
|
16
|
-
? await interaction.reply({
|
|
17
|
-
embeds: [duelEmbed],
|
|
18
|
-
components: [row],
|
|
19
|
-
fetchReply: true,
|
|
20
|
-
ephemeral: false,
|
|
21
|
-
})
|
|
22
|
-
: await interaction.reply({ embeds: [duelEmbed], components: [row] });
|
|
23
|
-
const filter = (btnInteraction) => {
|
|
24
|
-
return [userId, challengerId].includes(btnInteraction.user.id);
|
|
25
|
-
};
|
|
26
|
-
const collector = duelMessage.createMessageComponentCollector({
|
|
27
|
-
filter,
|
|
28
|
-
time: 60000,
|
|
29
|
-
});
|
|
30
|
-
collector.on('collect', async (btnInteraction) => {
|
|
31
|
-
const playerId = btnInteraction.user.id;
|
|
32
|
-
const playerChoice = btnInteraction.customId;
|
|
33
|
-
if (!this.playerChoices.has(playerId)) {
|
|
34
|
-
this.playerChoices.set(playerId, playerChoice);
|
|
35
|
-
await btnInteraction.reply({ content: `You chose ${playerChoice}`, ephemeral: true });
|
|
36
|
-
if (this.playerChoices.size === 2) {
|
|
37
|
-
collector.stop();
|
|
38
|
-
this.displayResults(interaction, userId, challengerId);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
collector.on('end', async (_collected, reason) => {
|
|
43
|
-
if (reason === 'time') {
|
|
44
|
-
const endMessage = `The duel has expired. <@${challengerId}> did not respond in time!`;
|
|
45
|
-
if ('editReply' in interaction) {
|
|
46
|
-
await interaction.editReply({ content: endMessage, components: [] });
|
|
47
|
-
}
|
|
48
|
-
else {
|
|
49
|
-
await interaction.channel?.send({ content: endMessage });
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
async displayResults(interaction, userId, challengerId) {
|
|
55
|
-
const userChoice = this.playerChoices.get(userId);
|
|
56
|
-
const challengerChoice = this.playerChoices.get(challengerId);
|
|
57
|
-
const result = this.getResult(userChoice, challengerChoice);
|
|
58
|
-
this.resultData = {
|
|
59
|
-
userId,
|
|
60
|
-
challengerId,
|
|
61
|
-
results: {
|
|
62
|
-
[userId]: result === userId,
|
|
63
|
-
[challengerId]: result === challengerId,
|
|
64
|
-
},
|
|
65
|
-
};
|
|
66
|
-
const resultEmbed = new discord_js_1.EmbedBuilder()
|
|
67
|
-
.setTitle('Rock-Paper-Scissors Results')
|
|
68
|
-
.setDescription(`<@${userId}> chose **${userChoice}**.\n<@${challengerId}> chose **${challengerChoice}**.\n\n**${result}**`)
|
|
69
|
-
.setColor('DarkNavy');
|
|
70
|
-
if ('editReply' in interaction) {
|
|
71
|
-
await interaction.editReply({ embeds: [resultEmbed], components: [] });
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
await interaction.channel?.send({ embeds: [resultEmbed], components: [] });
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
getResult(userChoice, challengerChoice) {
|
|
78
|
-
if (userChoice === challengerChoice)
|
|
79
|
-
return "It's a tie!";
|
|
80
|
-
if ((userChoice === 'rock' && challengerChoice === 'scissors') ||
|
|
81
|
-
(userChoice === 'paper' && challengerChoice === 'rock') ||
|
|
82
|
-
(userChoice === 'scissors' && challengerChoice === 'paper')) {
|
|
83
|
-
return userChoice ? userChoice : "";
|
|
84
|
-
}
|
|
85
|
-
return challengerChoice ? challengerChoice : "";
|
|
86
|
-
}
|
|
87
|
-
results() {
|
|
88
|
-
if (this.resultData) {
|
|
89
|
-
return {
|
|
90
|
-
userId: this.resultData.userId,
|
|
91
|
-
challengerId: this.resultData.challengerId,
|
|
92
|
-
results: this.resultData.results,
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
|
-
return null;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
exports.RPS = RPS;
|
|
99
|
-
//# sourceMappingURL=rps.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rps.js","sourceRoot":"","sources":["../../../lib/discord/games/rps.ts"],"names":[],"mappings":"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"}
|