node-leek 1.0.4 → 1.0.6

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);
@@ -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;
@@ -17,6 +18,7 @@ export declare class LeekWarsClient {
17
18
  private token;
18
19
  private phpsessid;
19
20
  protected currentRoom: string;
21
+ inBattleRoyal: boolean;
20
22
  constructor(username: string, password: string, readonly?: boolean);
21
23
  protected loginOnLeekwars(): Promise<Farmer>;
22
24
  close(): Promise<void>;
@@ -37,8 +39,10 @@ export declare class LeekWarsClient {
37
39
  protected getFarmerOpponents(): Promise<FarmerOpponent[]>;
38
40
  protected startFarmerFight(target_id: number): Promise<number>;
39
41
  getFight(fight_id: number): Promise<FightResult>;
42
+ getGarden(): Promise<Garden | null>;
40
43
  addMessageReaction(messageId: number, reaction: string): Promise<void>;
41
44
  spendCapital(leekId: number, capitals: CapitalRequest): Promise<void>;
45
+ protected registerInBattleRoyale(leek: number): Promise<void>;
42
46
  protected createBossRoom(bossId?: number, locked?: boolean, leeks?: number[]): Promise<void>;
43
47
  protected joinBossRoom(roomId: string, leeks?: number[]): Promise<void>;
44
48
  startRoomFight(): 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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"}
@@ -35,6 +35,7 @@ class LeekWarsClient {
35
35
  token = "";
36
36
  phpsessid = "";
37
37
  currentRoom = "";
38
+ inBattleRoyal = false;
38
39
  constructor(username, password, readonly = false) {
39
40
  this.readonly = readonly;
40
41
  this.username = username;
@@ -330,6 +331,23 @@ class LeekWarsClient {
330
331
  return new fightResult_js_1.FightResult();
331
332
  });
332
333
  }
334
+ async getGarden() {
335
+ if (!this.ready)
336
+ return null;
337
+ return this.apiClient.gardenGet()
338
+ .then(async (result) => {
339
+ await this.sleep(75);
340
+ return result.body;
341
+ })
342
+ .catch(err => {
343
+ if (err.statusCode == 429) { // TOO MANY REQUEST
344
+ return this.sleep(15000)
345
+ .then(() => this.getGarden());
346
+ }
347
+ console.error("getGarden -> [" + err.statusCode + "] " + err.body.error);
348
+ return null;
349
+ });
350
+ }
333
351
  async addMessageReaction(messageId, reaction) {
334
352
  if (!this.ready)
335
353
  return;
@@ -369,6 +387,11 @@ class LeekWarsClient {
369
387
  return;
370
388
  });
371
389
  }
390
+ async registerInBattleRoyale(leek) {
391
+ const r = `[${SocketMessage_js_1.SocketMessage.BATTLE_ROYALE_REGISTER}, "${leek}"]`;
392
+ this.socket?.send(r);
393
+ console.log("Join battle royal : ", r);
394
+ }
372
395
  async createBossRoom(bossId = 1, locked = false, leeks = []) {
373
396
  const r = `[${SocketMessage_js_1.SocketMessage.GARDEN_BOSS_CREATE_SQUAD}, ${bossId}, ${locked}, [${leeks}]]`;
374
397
  this.socket?.send(r);
@@ -464,14 +487,17 @@ class LeekWarsClient {
464
487
  break;
465
488
  }
466
489
  case SocketMessage_js_1.SocketMessage.BATTLE_ROYALE_UPDATE: {
490
+ this.inBattleRoyal = true;
467
491
  console.log(`[WS ${this.username}] received BATTLE_ROYALE_UPDATE`, data);
468
492
  break;
469
493
  }
470
494
  case SocketMessage_js_1.SocketMessage.BATTLE_ROYALE_START: {
495
+ this.inBattleRoyal = false;
471
496
  console.log(`[WS ${this.username}] received BATTLE_ROYALE_START`, data);
472
497
  break;
473
498
  }
474
499
  case SocketMessage_js_1.SocketMessage.BATTLE_ROYALE_LEAVE: {
500
+ this.inBattleRoyal = false;
475
501
  console.log(`[WS ${this.username}] received BATTLE_ROYALE_LEAVE`, data);
476
502
  break;
477
503
  }
@@ -32,6 +32,7 @@ export declare class NodeLeekClient extends LeekWarsClient {
32
32
  startRandomTeamFight(leek_id: number): Promise<[Opponent, number]>;
33
33
  getCompleteFight(fight_id: number): Promise<FightResult | void>;
34
34
  syncWith(path: string, watch: boolean, choice?: string): Promise<void>;
35
+ joinBattleRoyale(): Promise<void>;
35
36
  createRoom(bossId: number, locked?: boolean): Promise<string>;
36
37
  joinRoom(roomId: string): Promise<string>;
37
38
  }
@@ -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,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,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
  }
@@ -188,6 +190,12 @@ class NodeLeekClient extends leek_wars_client_js_1.LeekWarsClient {
188
190
  this.leekSyncClient = new leek_sync_client_js_1.LeekSyncClient(this, path);
189
191
  return this.leekSyncClient.start(watch, choice);
190
192
  }
193
+ async joinBattleRoyale() {
194
+ if (this.farmer.fights == 0)
195
+ return;
196
+ await this.registerInBattleRoyale(Number(Object.keys(this.farmer.leeks)[0]));
197
+ await this.sleep(100);
198
+ }
191
199
  async createRoom(bossId, locked = false) {
192
200
  if (this.farmer.fights == 0)
193
201
  return "";
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "node-leek",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "description": "A library for interacting with LeekWars API.",
5
5
  "main": "dist/app.js",
6
6
  "types": "dist/app.d.ts",
7
7
  "scripts": {
8
8
  "build": "tsc",
9
9
  "prepublish": "npm run build",
10
+ "localtest": "npx tsc ; node dist/test.js",
10
11
  "test": "echo \"Error: no test specified\" && exit 1"
11
12
  },
12
13
  "keywords": [