@pkmn/sim 0.7.22 → 0.7.23

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.
@@ -11,6 +11,31 @@
11
11
  import { Streams, Utils } from '../lib/index.mjs';
12
12
  import { Teams } from './teams.mjs';
13
13
  import { Battle } from './battle.mjs';
14
+ const splitRegex = /^\|split\|p([1234])\n(.*)\n(.*)|.+/gm;
15
+ export function extractChannelMessages(message, channelIds) {
16
+ const channelIdSet = new Set(channelIds);
17
+ const channelMessages = {
18
+ [-1]: [],
19
+ 0: [],
20
+ 1: [],
21
+ 2: [],
22
+ 3: [],
23
+ 4: [],
24
+ };
25
+ for (const [lineMatch, playerMatch, secretMessage, sharedMessage] of message.matchAll(splitRegex)) {
26
+ const player = playerMatch ? parseInt(playerMatch) : 0;
27
+ for (const channelId of channelIdSet) {
28
+ let line = lineMatch;
29
+ if (player) {
30
+ line = channelId === -1 || player === channelId ? secretMessage : sharedMessage;
31
+ if (!line)
32
+ continue;
33
+ }
34
+ channelMessages[channelId].push(line);
35
+ }
36
+ }
37
+ return channelMessages;
38
+ }
14
39
  /**
15
40
  * Like string.split(delimiter), but only recognizes the first `limit`
16
41
  * delimiters (default 1).
@@ -74,10 +99,12 @@ export class BattleStream extends Streams.ObjectReadWriteStream {
74
99
  if (this.replay) {
75
100
  if (type === 'update') {
76
101
  if (this.replay === 'spectator') {
77
- this.push(data.replace(/\n\|split\|p[1234]\n(?:[^\n]*)\n([^\n]*)/g, '\n$1'));
102
+ const channelMessages = extractChannelMessages(data, [0]);
103
+ this.push(channelMessages[0].join('\n'));
78
104
  }
79
105
  else {
80
- this.push(data.replace(/\n\|split\|p[1234]\n([^\n]*)\n(?:[^\n]*)/g, '\n$1'));
106
+ const channelMessages = extractChannelMessages(data, [-1]);
107
+ this.push(channelMessages[-1].join('\n'));
81
108
  }
82
109
  }
83
110
  return;
@@ -281,12 +308,13 @@ export function getPlayerStreams(stream) {
281
308
  const [type, data] = splitFirst(chunk, `\n`);
282
309
  switch (type) {
283
310
  case 'update':
284
- streams.omniscient.push(Battle.extractUpdateForSide(data, 'omniscient'));
285
- streams.spectator.push(Battle.extractUpdateForSide(data, 'spectator'));
286
- streams.p1.push(Battle.extractUpdateForSide(data, 'p1'));
287
- streams.p2.push(Battle.extractUpdateForSide(data, 'p2'));
288
- streams.p3.push(Battle.extractUpdateForSide(data, 'p3'));
289
- streams.p4.push(Battle.extractUpdateForSide(data, 'p4'));
311
+ const channelMessages = extractChannelMessages(data, [-1, 0, 1, 2, 3, 4]);
312
+ streams.omniscient.push(channelMessages[-1].join('\n'));
313
+ streams.spectator.push(channelMessages[0].join('\n'));
314
+ streams.p1.push(channelMessages[1].join('\n'));
315
+ streams.p2.push(channelMessages[2].join('\n'));
316
+ streams.p3.push(channelMessages[3].join('\n'));
317
+ streams.p4.push(channelMessages[4].join('\n'));
290
318
  break;
291
319
  case 'sideupdate':
292
320
  const [side, sideData] = splitFirst(data, `\n`);
@@ -1 +1 @@
1
- {"version":3,"file":"battle-stream.js","sourceRoot":"","sources":["../../../sim/battle-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"battle-stream.js","sourceRoot":"","sources":["../../../sim/battle-stream.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ import { State } from './state.mjs';
23
23
  import { BattleQueue } from './battle-queue.mjs';
24
24
  import { BattleActions } from './battle-actions.mjs';
25
25
  import { Utils } from '../lib/index.mjs';
26
+ import { extractChannelMessages } from './battle-stream.mjs';
26
27
  export class Battle {
27
28
  constructor(options) {
28
29
  this.toID = toID;
@@ -2718,32 +2719,9 @@ export class Battle {
2718
2719
  this.add('debug', activity);
2719
2720
  }
2720
2721
  }
2721
- static extractUpdateForSide(data, side = 'spectator') {
2722
- if (side === 'omniscient') {
2723
- // Grab all secret data
2724
- return data.replace(/\|split\|p[1234]\n([^\n]*)\n(?:[^\n]*)/g, '$1');
2725
- }
2726
- // Grab secret data side has access to
2727
- switch (side) {
2728
- case 'p1':
2729
- data = data.replace(/\|split\|p1\n([^\n]*)\n(?:[^\n]*)/g, '$1');
2730
- break;
2731
- case 'p2':
2732
- data = data.replace(/\|split\|p2\n([^\n]*)\n(?:[^\n]*)/g, '$1');
2733
- break;
2734
- case 'p3':
2735
- data = data.replace(/\|split\|p3\n([^\n]*)\n(?:[^\n]*)/g, '$1');
2736
- break;
2737
- case 'p4':
2738
- data = data.replace(/\|split\|p4\n([^\n]*)\n(?:[^\n]*)/g, '$1');
2739
- break;
2740
- }
2741
- // Discard remaining secret data
2742
- // Note: the last \n? is for secret data that are empty when shared
2743
- return data.replace(/\|split\|(?:[^\n]*)\n(?:[^\n]*)\n\n?/g, '');
2744
- }
2745
2722
  getDebugLog() {
2746
- return Battle.extractUpdateForSide(this.log.join('\n'), 'omniscient');
2723
+ const channelMessages = extractChannelMessages(this.log.join('\n'), [-1]);
2724
+ return channelMessages[-1].join('\n');
2747
2725
  }
2748
2726
  debugError(activity) {
2749
2727
  this.add('debug', activity);