mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-21 10:47:04 +02:00
feat: added sharding
This commit is contained in:
1 parent
ad51be7afc
commit
43f634e198
5 files changed
+21
-6
No files matched your search
Vendored
+1
@@ -15,6 +15,7 @@
|
||||
"kranvagn",
|
||||
"Leaderboard",
|
||||
"leaderboards",
|
||||
"outdir",
|
||||
"outfile",
|
||||
"ownedtanks",
|
||||
"playerachievements",
|
||||
|
||||
+6
-5
@@ -1,10 +1,10 @@
|
||||
import { build } from 'esbuild';
|
||||
|
||||
console.log('Building bot...');
|
||||
const FILES = ['bot', 'index'];
|
||||
|
||||
await build({
|
||||
entryPoints: ['src/bot.ts'],
|
||||
outfile: 'dist/bot/index.cjs',
|
||||
entryPoints: FILES.map((file) => `src/${file}.ts`),
|
||||
outdir: 'dist/bot',
|
||||
|
||||
platform: 'node',
|
||||
tsconfig: 'tsconfig.esbuild.json',
|
||||
@@ -14,6 +14,9 @@ await build({
|
||||
},
|
||||
format: 'cjs',
|
||||
jsx: 'transform',
|
||||
outExtension: {
|
||||
'.js': '.cjs',
|
||||
},
|
||||
|
||||
bundle: true,
|
||||
sourcemap: true,
|
||||
@@ -23,5 +26,3 @@ await build({
|
||||
|
||||
logLevel: 'info',
|
||||
});
|
||||
|
||||
console.log('Built bot');
|
||||
@@ -21,7 +21,6 @@ export interface Tankopedia {
|
||||
[id: number]: TankopediaEntry | undefined;
|
||||
}
|
||||
|
||||
console.log('Caching tankopedia...');
|
||||
export const tankopedia = fetch(
|
||||
context === 'bot'
|
||||
? 'https://www.blitzstars.com/bs-tankopedia.json'
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
import { ShardingManager } from 'discord.js';
|
||||
import { secrets } from '../blitzkrieg/secrets';
|
||||
|
||||
export const manager = new ShardingManager(`${__dirname}/bot.cjs`, {
|
||||
token: secrets.DISCORD_TOKEN,
|
||||
});
|
||||
@@ -0,0 +1,8 @@
|
||||
import { manager } from './core/discord/manager';
|
||||
|
||||
manager.on('shardCreate', (shard) => {
|
||||
console.log(`🟡 Launching shard ${shard.id}`);
|
||||
shard.on('ready', () => console.log(`🟢 Shard ${shard.id} launched`));
|
||||
});
|
||||
|
||||
manager.spawn();
|
||||
Reference in new issue
Block a user