node-leek 1.0.5 → 1.0.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"credentials-manager.d.ts","sourceRoot":"","sources":["../../src/credentials/credentials-manager.ts"],"names":[],"mappings":"AAGA,qBAAa,mBAAmB;IACrB,QAAQ,EAAE,MAAM,CAAK;IACrB,QAAQ,EAAE,MAAM,CAAK;CAC/B;AAED,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,OAAO,CAAiC;gBAEpC,IAAI,EAAE,MAAM;IAIxB,OAAO,CAAC,IAAI;YAUE,aAAa;YAiBb,gBAAgB;IAWjB,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,GAAE,OAAe;IAMpD,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,GAAE,OAAe;IAIrD,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,GAAE,OAAe;IAMrD,0BAA0B,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,GAAE,OAAe;IAOhE,kBAAkB,CAAC,QAAQ,GAAE,OAAe;IAM5C,qBAAqB;CAKrC"}
1
+ {"version":3,"file":"credentials-manager.d.ts","sourceRoot":"","sources":["../../src/credentials/credentials-manager.ts"],"names":[],"mappings":"AAGA,qBAAa,mBAAmB;IACrB,QAAQ,EAAE,MAAM,CAAK;IACrB,QAAQ,EAAE,MAAM,CAAK;CAC/B;AAED,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,OAAO,CAAiC;gBAEpC,IAAI,EAAE,MAAM;IAIxB,OAAO,CAAC,IAAI;YAUE,aAAa;YAiBb,gBAAgB;IAajB,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,GAAE,OAAe;IAQpD,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,GAAE,OAAe;IAIrD,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,GAAE,OAAe;IAQrD,0BAA0B,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,GAAE,OAAe;IAOhE,kBAAkB,CAAC,QAAQ,GAAE,OAAe;IAQ5C,qBAAqB;CAOrC"}
@@ -44,12 +44,16 @@ class CredentialsManager {
44
44
  return;
45
45
  }
46
46
  if (this.clients[index] != null) {
47
+ await new Promise(resolve => setTimeout(resolve, 50));
47
48
  await this.clients[index]?.close();
49
+ await new Promise(resolve => setTimeout(resolve, 50));
48
50
  }
49
51
  }
50
52
  async forEachAccount(input, readonly = false) {
51
53
  for (let i = 0; i < this.credentials.length; i++) {
54
+ await new Promise(resolve => setTimeout(resolve, 50));
52
55
  await input(await this.connectClient(i, readonly), i);
56
+ await new Promise(resolve => setTimeout(resolve, 50));
53
57
  }
54
58
  }
55
59
  async forFirstAccount(input, readonly = false) {
@@ -57,7 +61,9 @@ class CredentialsManager {
57
61
  }
58
62
  async forOtherAccount(input, readonly = false) {
59
63
  for (let i = 1; i < this.credentials.length; i++) {
64
+ await new Promise(resolve => setTimeout(resolve, 50));
60
65
  await input(await this.connectClient(i, readonly), i);
66
+ await new Promise(resolve => setTimeout(resolve, 50));
61
67
  }
62
68
  }
63
69
  async forEachAccountSimultaneous(input, readonly = false) {
@@ -68,12 +74,16 @@ class CredentialsManager {
68
74
  }
69
75
  async connectEachAccount(readonly = false) {
70
76
  for (var i = 0; i < this.credentials.length; i++) {
77
+ await new Promise(resolve => setTimeout(resolve, 50));
71
78
  await this.connectClient(i, readonly);
79
+ await new Promise(resolve => setTimeout(resolve, 50));
72
80
  }
73
81
  }
74
82
  async disconnectEachAccount() {
75
83
  for (var i = 0; i < this.credentials.length; i++) {
84
+ await new Promise(resolve => setTimeout(resolve, 50));
76
85
  await this.disconnectClient(i);
86
+ await new Promise(resolve => setTimeout(resolve, 50));
77
87
  }
78
88
  }
79
89
  }
@@ -9,7 +9,6 @@ declare class LeekFile {
9
9
  constructor(name: string, id: number, code: string, timestamp: number, folder?: boolean, hash?: string | null);
10
10
  getHash(code: string): string;
11
11
  getFilename(): string;
12
- getFilenameWithoutExtension(): string;
13
12
  getParentFolder(): string;
14
13
  isSimilar(file: LeekFile): boolean;
15
14
  setCode(code: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"leekfile.d.ts","sourceRoot":"","sources":["../../../src/leek-sync/filelist/leekfile.ts"],"names":[],"mappings":"AAEA,cAAM,QAAQ;IACH,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAM;IAClB,MAAM,EAAE,OAAO,CAAQ;IACvB,IAAI,EAAE,MAAM,CAAM;IAEzB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAE,MAAU,GAAI,QAAQ;gBAI1C,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAE,OAAe,EAAE,IAAI,GAAE,MAAM,GAAG,IAAW;IAS1H,OAAO,CAAC,IAAI,EAAE,MAAM,GAAI,MAAM;IAI9B,WAAW,IAAI,MAAM;IAQrB,2BAA2B,IAAI,MAAM;IAQrC,eAAe,IAAI,MAAM;IAQlB,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAI,OAAO;IAI1C,OAAO,CAAC,IAAI,EAAE,MAAM;CAIvB;AAED,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"leekfile.d.ts","sourceRoot":"","sources":["../../../src/leek-sync/filelist/leekfile.ts"],"names":[],"mappings":"AAEA,cAAM,QAAQ;IACH,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAM;IAClB,MAAM,EAAE,OAAO,CAAQ;IACvB,IAAI,EAAE,MAAM,CAAM;IAEzB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAE,MAAU,GAAI,QAAQ;gBAI1C,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAE,OAAe,EAAE,IAAI,GAAE,MAAM,GAAG,IAAW;IAS1H,OAAO,CAAC,IAAI,EAAE,MAAM,GAAI,MAAM;IAI9B,WAAW,IAAI,MAAM;IAQrB,eAAe,IAAI,MAAM;IAQlB,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAI,OAAO;IAI1C,OAAO,CAAC,IAAI,EAAE,MAAM;CAIvB;AAED,eAAe,QAAQ,CAAC"}
@@ -29,13 +29,6 @@ class LeekFile {
29
29
  }
30
30
  return this.name.substring(this.name.lastIndexOf("/") + 1);
31
31
  }
32
- getFilenameWithoutExtension() {
33
- const name = this.getFilename();
34
- if (this.folder) {
35
- return name;
36
- }
37
- return name.substring(0, name.lastIndexOf("."));
38
- }
39
32
  getParentFolder() {
40
33
  if (this.folder) {
41
34
  const withoutLeadingSlash = this.name.substring(0, this.name.length - 1);
@@ -1 +1 @@
1
- {"version":3,"file":"leekfile-source.d.ts","sourceRoot":"","sources":["../../../src/leek-sync/leekfile-source/leekfile-source.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAG/C,uBAAe,cAAc;IAEzB,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE7B,SAAS,aAAa,QAAQ,EAAE,QAAQ;IAIlC,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,QAAQ,CAAC,IAAI,IAAI,IAAI;IAEf,UAAU,CAAC,WAAW,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAe5D,WAAW,CAAC,WAAW,EAAE,cAAc,GAAG,OAAO;IAIjD,UAAU,IAAI,OAAO;IAIrB,QAAQ,IAAI,MAAM;CAGrB;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"leekfile-source.d.ts","sourceRoot":"","sources":["../../../src/leek-sync/leekfile-source/leekfile-source.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAG/C,uBAAe,cAAc;IAEzB,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE7B,SAAS,aAAa,QAAQ,EAAE,QAAQ;IAIlC,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,QAAQ,CAAC,IAAI,IAAI,IAAI;IAEf,UAAU,CAAC,WAAW,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB5D,WAAW,CAAC,WAAW,EAAE,cAAc,GAAG,OAAO;IAIjD,UAAU,IAAI,OAAO;IAIrB,QAAQ,IAAI,MAAM;CAGrB;AAED,eAAe,cAAc,CAAC"}
@@ -15,13 +15,17 @@ class LeekfileSource {
15
15
  // Remove file not present in the otherSource
16
16
  for (const file of this.filelist.getFiles()
17
17
  .filter((file) => !otherSource.filelist.contains(file.name))) {
18
+ await new Promise(resolve => setTimeout(resolve, 50));
18
19
  await this.deleteFile(file);
20
+ await new Promise(resolve => setTimeout(resolve, 50));
19
21
  }
20
22
  // Update files
21
23
  for (const file of otherSource.filelist.getFiles()
22
24
  .filter((file) => !this.filelist.fileIsSimilar(file))) {
23
25
  console.log("Updating out of sync : " + file.name);
26
+ await new Promise(resolve => setTimeout(resolve, 50));
24
27
  await this.updateFile(file);
28
+ await new Promise(resolve => setTimeout(resolve, 50));
25
29
  }
26
30
  }
27
31
  compareWith(otherSource) {
@@ -84,7 +84,7 @@ class LeekwarsSource extends leekfile_source_js_1.default {
84
84
  async createFileInLeekwars(file) {
85
85
  if (file.folder)
86
86
  return this.createFolderInLeekwars(file).then((id) => { });
87
- return this.nodeLeekClient.createFile(await this.getOrCreateFolderId(file.getParentFolder()), file.getFilenameWithoutExtension())
87
+ return this.nodeLeekClient.createFile(await this.getOrCreateFolderId(file.getParentFolder()), file.getFilename())
88
88
  .then(async (ia) => {
89
89
  const newFile = new leekfile_js_1.default(file.name, ia.id, ia.code, 0);
90
90
  this.filelist.set(file.name, newFile);
@@ -1 +1 @@
1
- {"version":3,"file":"localfile-source.d.ts","sourceRoot":"","sources":["../../../src/leek-sync/leekfile-source/localfile-source.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAClD,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAM/C,cAAM,eAAgB,SAAQ,cAAc;IAExC,OAAO,CAAC,IAAI,CAAQ;IACpB,OAAO,CAAC,QAAQ,CAAmB;gBAEvB,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAMtC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBZ,UAAU,CAAC,IAAI,EAAE,QAAQ;IAmBzB,UAAU,CAAC,IAAI,EAAE,QAAQ;YAU1B,2BAA2B;IAIzC,OAAO,CAAC,2BAA2B;IAUnC,OAAO,CAAC,6BAA6B;IAO9B,aAAa,CAAC,cAAc,EAAE,cAAc;IAmB5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,OAAe,GAAG,QAAQ;IAMlE,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,YAAY;IA2BpB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,QAAQ;CAwCnB;AAED,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"localfile-source.d.ts","sourceRoot":"","sources":["../../../src/leek-sync/leekfile-source/localfile-source.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAClD,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAM/C,cAAM,eAAgB,SAAQ,cAAc;IAExC,OAAO,CAAC,IAAI,CAAQ;IACpB,OAAO,CAAC,QAAQ,CAAmB;gBAEvB,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAMtC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBZ,UAAU,CAAC,IAAI,EAAE,QAAQ;IAmBzB,UAAU,CAAC,IAAI,EAAE,QAAQ;YAU1B,2BAA2B;IAIzC,OAAO,CAAC,2BAA2B;IAUnC,OAAO,CAAC,6BAA6B;IAO9B,aAAa,CAAC,cAAc,EAAE,cAAc;IAmB5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,OAAe,GAAG,QAAQ;IAKlE,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,YAAY;IA2BpB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,QAAQ;CAwCnB;AAED,eAAe,eAAe,CAAC"}
@@ -98,11 +98,10 @@ class LocalfileSource extends leekfile_source_js_1.default {
98
98
  loadFile(filename, lazy = false) {
99
99
  if (!lazy)
100
100
  console.debug("Loading " + filename);
101
- console.debug("Loading " + filename);
102
101
  return new leekfile_js_1.default(filename, 0, lazy ? "Lazy loaded file, shouldn't be upload to leekwars as such" : node_fs_1.default.readFileSync(this.path + filename, "utf8"), this.getFileTimestamp(filename), false);
103
102
  }
104
103
  getFileTimestamp(filename) {
105
- console.log("getFileTimestamp " + filename);
104
+ // console.log("getFileTimestamp " + filename)
106
105
  return node_fs_1.default.statSync(this.path + filename).mtime.getTime();
107
106
  }
108
107
  exploreFiles(from, filelist = null) {
@@ -7,6 +7,7 @@ import { FarmerOpponent } from "../codegen/model/farmerOpponent.js";
7
7
  import { PublicLeek } from "../codegen/model/publicLeek.js";
8
8
  import { Buy200Response } from "../codegen/model/buy200Response.js";
9
9
  import { CapitalRequest } from "./model/capital-request";
10
+ import { Garden } from "../codegen/model/garden";
10
11
  export declare class LeekWarsClient {
11
12
  private apiClient;
12
13
  private ready;
@@ -38,6 +39,7 @@ export declare class LeekWarsClient {
38
39
  protected getFarmerOpponents(): Promise<FarmerOpponent[]>;
39
40
  protected startFarmerFight(target_id: number): Promise<number>;
40
41
  getFight(fight_id: number): Promise<FightResult>;
42
+ getGarden(): Promise<Garden | null>;
41
43
  addMessageReaction(messageId: number, reaction: string): Promise<void>;
42
44
  spendCapital(leekId: number, capitals: CapitalRequest): Promise<void>;
43
45
  protected registerInBattleRoyale(leek: number): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"leek-wars-client.d.ts","sourceRoot":"","sources":["../../src/node-leek-client/leek-wars-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"leek-wars-client.d.ts","sourceRoot":"","sources":["../../src/node-leek-client/leek-wars-client.ts"],"names":[],"mappings":"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"}
@@ -245,7 +245,11 @@ class LeekWarsClient {
245
245
  }
246
246
  async getSoloOpponents(leek_id) {
247
247
  return this.apiClient.getSoloOpponents(leek_id)
248
- .then(result => result.body.opponents)
248
+ .then(async (result) => {
249
+ // Add on purpose delay to avoid TOO_MANY_REQUEST
250
+ await this.sleep(100);
251
+ return result.body.opponents;
252
+ })
249
253
  .catch(err => {
250
254
  if (err.statusCode == 429) { // TOO MANY REQUEST
251
255
  return this.sleep(15000)
@@ -262,6 +266,7 @@ class LeekWarsClient {
262
266
  console.error("Readonly mode, can't start fight");
263
267
  return -1;
264
268
  }
269
+ await this.sleep(100);
265
270
  return this.apiClient.startSoloFight({
266
271
  leekId: leek_id,
267
272
  targetId: target_id
@@ -284,7 +289,11 @@ class LeekWarsClient {
284
289
  if (!this.ready)
285
290
  return [];
286
291
  return this.apiClient.getFarmerOpponents()
287
- .then(result => result.body.opponents)
292
+ .then(async (result) => {
293
+ // Add on purpose delay to avoid TOO_MANY_REQUEST
294
+ await this.sleep(100);
295
+ return result.body.opponents;
296
+ })
288
297
  .catch(err => {
289
298
  if (err.statusCode == 429) { // TOO MANY REQUEST
290
299
  return this.sleep(15000)
@@ -319,7 +328,7 @@ class LeekWarsClient {
319
328
  return new fightResult_js_1.FightResult();
320
329
  return this.apiClient.getFight(fight_id)
321
330
  .then(async (result) => {
322
- await this.sleep(75);
331
+ await this.sleep(100);
323
332
  return result.body;
324
333
  })
325
334
  .catch(err => {
@@ -331,6 +340,23 @@ class LeekWarsClient {
331
340
  return new fightResult_js_1.FightResult();
332
341
  });
333
342
  }
343
+ async getGarden() {
344
+ if (!this.ready)
345
+ return null;
346
+ return this.apiClient.gardenGet()
347
+ .then(async (result) => {
348
+ await this.sleep(100);
349
+ return result.body;
350
+ })
351
+ .catch(err => {
352
+ if (err.statusCode == 429) { // TOO MANY REQUEST
353
+ return this.sleep(15000)
354
+ .then(() => this.getGarden());
355
+ }
356
+ console.error("getGarden -> [" + err.statusCode + "] " + err.body.error);
357
+ return null;
358
+ });
359
+ }
334
360
  async addMessageReaction(messageId, reaction) {
335
361
  if (!this.ready)
336
362
  return;
@@ -339,7 +365,7 @@ class LeekWarsClient {
339
365
  reaction: reaction
340
366
  })
341
367
  .then(async (result) => {
342
- return this.sleep(75);
368
+ return this.sleep(100);
343
369
  })
344
370
  .catch(err => {
345
371
  if (err.statusCode == 429) { // TOO MANY REQUEST
@@ -354,12 +380,13 @@ class LeekWarsClient {
354
380
  if (!this.ready)
355
381
  return;
356
382
  const request = `{"life":${capitals.life ?? 0},"strength":${capitals.strength ?? 0},"wisdom":${capitals.wisdom ?? 0},"agility":${capitals.agility ?? 0},"resistance":${capitals.resistance ?? 0},"frequency":${capitals.frequency ?? 0},"science":${capitals.science ?? 0},"magic":${capitals.science ?? 0},"cores":${capitals.cores ?? 0},"ram":${capitals.ram ?? 0},"tp":${capitals.tp ?? 0},"mp":${capitals.mp ?? 0}}`;
383
+ await this.sleep(100);
357
384
  return this.apiClient.spendCapital({
358
385
  leekId: leekId,
359
386
  characteristics: request
360
387
  })
361
388
  .then(async (result) => {
362
- return this.sleep(75);
389
+ return this.sleep(100);
363
390
  })
364
391
  .catch(err => {
365
392
  if (err.statusCode == 429) { // TOO MANY REQUEST
@@ -371,17 +398,17 @@ class LeekWarsClient {
371
398
  });
372
399
  }
373
400
  async registerInBattleRoyale(leek) {
374
- const r = `[${SocketMessage_js_1.SocketMessage.BATTLE_ROYALE_REGISTER}, "${leek}"]`;
401
+ const r = `[${SocketMessage_js_1.SocketMessage.BATTLE_ROYALE_REGISTER},"${leek}"]`;
375
402
  this.socket?.send(r);
376
403
  console.log("Join battle royal : ", r);
377
404
  }
378
405
  async createBossRoom(bossId = 1, locked = false, leeks = []) {
379
- const r = `[${SocketMessage_js_1.SocketMessage.GARDEN_BOSS_CREATE_SQUAD}, ${bossId}, ${locked}, [${leeks}]]`;
406
+ const r = `[${SocketMessage_js_1.SocketMessage.GARDEN_BOSS_CREATE_SQUAD},${bossId},${locked},[${leeks}]]`;
380
407
  this.socket?.send(r);
381
408
  console.log("Create room : ", r);
382
409
  }
383
410
  async joinBossRoom(roomId, leeks = []) {
384
- const r = `[${SocketMessage_js_1.SocketMessage.GARDEN_BOSS_JOIN_SQUAD}, "${roomId}", [${leeks}]]`;
411
+ const r = `[${SocketMessage_js_1.SocketMessage.GARDEN_BOSS_JOIN_SQUAD},"${roomId}",[${leeks}]]`;
385
412
  this.socket?.send(r);
386
413
  console.log("Join room : ", r);
387
414
  }
@@ -34,6 +34,7 @@ export declare class NodeLeekClient extends LeekWarsClient {
34
34
  syncWith(path: string, watch: boolean, choice?: string): Promise<void>;
35
35
  joinBattleRoyale(): Promise<void>;
36
36
  createRoom(bossId: number, locked?: boolean): Promise<string>;
37
+ createRoomWith(bossId: number, leeks: number[], locked?: boolean): Promise<string>;
37
38
  joinRoom(roomId: string): Promise<string>;
38
39
  }
39
40
  //# sourceMappingURL=node-leek-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-leek-client.d.ts","sourceRoot":"","sources":["../../src/node-leek-client/node-leek-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,4BAA4B,CAAC;AAGlD,OAAO,EAAC,QAAQ,EAAC,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,iCAAiC,CAAC;AAE5D,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAC,UAAU,EAAC,MAAM,gCAAgC,CAAC;AAO1D,qBAAa,cAAe,SAAQ,cAAc;IAEvC,MAAM,EAAE,MAAM,CAAgB;IAC9B,KAAK,EAAE,UAAU,EAAE,CAAM;IAChC,OAAO,CAAC,WAAW,CAAqC;IACxD,OAAO,CAAC,WAAW,CAAuC;IAC1D,OAAO,CAAC,cAAc,CAA+B;WAEjC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAK1E,KAAK;YAaJ,UAAU;IAWjB,cAAc;IAKrB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,iBAAiB;IA0BzB,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,gBAAgB;YAQV,eAAe;IAO7B,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAMX,QAAQ,IAAI;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;IAI7C,OAAO,CAAC,gBAAgB;IAIX,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIxC,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAI,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAcnE,sBAAsB,IAAK,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IActD,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAI,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAcnE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAWhE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAE,MAAW;IAK1D,gBAAgB,IAAK,OAAO,CAAC,IAAI,CAAC;IAMlC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,OAAe,GAAI,OAAO,CAAC,MAAM,CAAC;IAUrE,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAI,OAAO,CAAC,MAAM,CAAC;CAO1D"}
1
+ {"version":3,"file":"node-leek-client.d.ts","sourceRoot":"","sources":["../../src/node-leek-client/node-leek-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,4BAA4B,CAAC;AAGlD,OAAO,EAAC,QAAQ,EAAC,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,iCAAiC,CAAC;AAE5D,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAC,UAAU,EAAC,MAAM,gCAAgC,CAAC;AAO1D,qBAAa,cAAe,SAAQ,cAAc;IAEvC,MAAM,EAAE,MAAM,CAAgB;IAC9B,KAAK,EAAE,UAAU,EAAE,CAAM;IAChC,OAAO,CAAC,WAAW,CAAqC;IACxD,OAAO,CAAC,WAAW,CAAuC;IAC1D,OAAO,CAAC,cAAc,CAA+B;WAEjC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAK1E,KAAK;YAaJ,UAAU;IAajB,cAAc;IAKrB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,iBAAiB;IA0BzB,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,gBAAgB;YAQV,eAAe;IAO7B,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAMX,QAAQ,IAAI;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;IAI7C,OAAO,CAAC,gBAAgB;IAIX,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIxC,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAI,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAcnE,sBAAsB,IAAK,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IActD,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAI,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAcnE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAWhE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAE,MAAW;IAK1D,gBAAgB,IAAK,OAAO,CAAC,IAAI,CAAC;IAMlC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,OAAe,GAAI,OAAO,CAAC,MAAM,CAAC;IAUrE,cAAc,CAAC,MAAM,EAAE,MAAM,EAAG,KAAK,EAAE,MAAM,EAAE,EAAE,MAAM,GAAE,OAAe,GAAI,OAAO,CAAC,MAAM,CAAC;IAU3F,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAI,OAAO,CAAC,MAAM,CAAC;CAO1D"}
@@ -36,7 +36,9 @@ class NodeLeekClient extends leek_wars_client_js_1.LeekWarsClient {
36
36
  this.registerFolders(this.farmer.folders);
37
37
  this.registerAis(this.farmer.ais);
38
38
  for (const id of Object.keys(this.farmer.leeks)) {
39
+ await this.sleep(50);
39
40
  await this.registerOwnLeek(Number(id));
41
+ await this.sleep(50);
40
42
  }
41
43
  this.leeks.forEach(leek => this.logLeekInfos(leek));
42
44
  }
@@ -125,7 +127,7 @@ class NodeLeekClient extends leek_wars_client_js_1.LeekWarsClient {
125
127
  }
126
128
  registerAi(ai) {
127
129
  if (this.foldersById[ai.folder] != undefined) {
128
- this.filesByName[(this.foldersById[ai.folder] ?? "/") + ai.name + ".leek"] = ai.id;
130
+ this.filesByName[(this.foldersById[ai.folder] ?? "/") + ai.name] = ai.id;
129
131
  }
130
132
  }
131
133
  getFiles() {
@@ -204,6 +206,16 @@ class NodeLeekClient extends leek_wars_client_js_1.LeekWarsClient {
204
206
  }
205
207
  return this.currentRoom;
206
208
  }
209
+ async createRoomWith(bossId, leeks, locked = false) {
210
+ if (this.farmer.fights == 0)
211
+ return "";
212
+ this.currentRoom = "";
213
+ await this.createBossRoom(bossId, locked, leeks);
214
+ while (this.currentRoom == "") {
215
+ await this.sleep(10);
216
+ }
217
+ return this.currentRoom;
218
+ }
207
219
  async joinRoom(roomId) {
208
220
  await this.joinBossRoom(roomId, Object.keys(this.farmer.leeks).map(id => Number(id)));
209
221
  while (this.currentRoom == "") {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-leek",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "description": "A library for interacting with LeekWars API.",
5
5
  "main": "dist/app.js",
6
6
  "types": "dist/app.d.ts",