-
Notifications
You must be signed in to change notification settings - Fork 33
/
shard.js
54 lines (42 loc) · 1.88 KB
/
shard.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
const { ShardingManager } = require('discord.js');
const fs = require("fs");
const config = require("./config.json");
const logger = require("./modules/Logger.js");
if (!config.mongooseToken)
return logger.error('config.json\'da \'mongooseToken\' değeri bulunamadı. Hatalarla karşılaşmamak için lütfen doğru biçimde mongooseToken değerini doldurun.');
const manager = new ShardingManager('./client.js', {
totalShards: 'auto',
respawn: true,
token: config.token,
execArgv: [/*"--inspect",*/ "--max-old-space-size=2048", "--trace-warnings", "client.js"/*, clientDataId*/],
});
//------------------------------Routine control------------------------------//
const logsFolder = './logs';
if (!fs.existsSync(logsFolder)) {
fs.mkdirSync(logsFolder);
logger.warn("Logs folder could not be found! The folder was created automatically.");
}
if (!config.mongooseToken)
return logger.error('config.json\'da \'mongooseToken\' değeri bulunamadı. Hatalarla karşılaşmamak için lütfen doğru biçimde mongooseToken değerini doldurun.');
//------------------------------Shard Create------------------------------//
manager.on('shardCreate', (shard) => {
//logger.shard(`Shard ${shard.id + 1} is starting...`);
shard.on('death', () => logger.warn(`Shard ${shard.id + 1} death eventi yolladı!`));
shard.on("disconnect", (event) => logger.error(event));
//shard.on('ready', () => logger.ready(`Shard ${shard.id + 1} is now up and running!`));
shard.on('error', (err) => logger.error(`Shard ${shard.id + 1}'de sıkıntı cıktı hocisim!: \n` + (err.message ? err.message : err)));
});
try {
logger.client(`Loading Client...`);
manager.spawn({ timeout: 180000 })
/*.then(shards => {
shards.forEach(shard => {
shard.on('message', message => {
console.log(message);
});
});
})*/
.catch(logger.error);
} catch (e) {
console.log(e);
}