@gamepark/zenith 1.0.3 → 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.
Files changed (57) hide show
  1. package/dist/ZenithOptions.js +14 -14
  2. package/dist/ZenithOptions.js.map +1 -1
  3. package/dist/ZenithSetup.d.ts.map +1 -1
  4. package/dist/ZenithSetup.js +7 -11
  5. package/dist/ZenithSetup.js.map +1 -1
  6. package/dist/material/Agent.d.ts +14 -1
  7. package/dist/material/Agent.d.ts.map +1 -1
  8. package/dist/material/Agent.js +13 -0
  9. package/dist/material/Agent.js.map +1 -1
  10. package/dist/material/Agents.d.ts +10 -0
  11. package/dist/material/Agents.d.ts.map +1 -1
  12. package/dist/material/Agents.js +130 -1
  13. package/dist/material/Agents.js.map +1 -1
  14. package/dist/material/effect/Effect.d.ts +22 -4
  15. package/dist/material/effect/Effect.d.ts.map +1 -1
  16. package/dist/material/effect/Effect.js +3 -0
  17. package/dist/material/effect/Effect.js.map +1 -1
  18. package/dist/rules/Memory.d.ts +2 -1
  19. package/dist/rules/Memory.d.ts.map +1 -1
  20. package/dist/rules/Memory.js +1 -0
  21. package/dist/rules/Memory.js.map +1 -1
  22. package/dist/rules/effect/AgentEffects.spec.js +82 -167
  23. package/dist/rules/effect/AgentEffects.spec.js.map +1 -1
  24. package/dist/rules/effect/ChoiceRule.d.ts.map +1 -1
  25. package/dist/rules/effect/ChoiceRule.js +6 -4
  26. package/dist/rules/effect/ChoiceRule.js.map +1 -1
  27. package/dist/rules/effect/ConditionalRule.d.ts +6 -1
  28. package/dist/rules/effect/ConditionalRule.d.ts.map +1 -1
  29. package/dist/rules/effect/ConditionalRule.js +26 -1
  30. package/dist/rules/effect/ConditionalRule.js.map +1 -1
  31. package/dist/rules/effect/DevelopTechnologyRule.js +2 -2
  32. package/dist/rules/effect/DevelopTechnologyRule.js.map +1 -1
  33. package/dist/rules/effect/EffectEdgeCases.spec.js +74 -123
  34. package/dist/rules/effect/EffectEdgeCases.spec.js.map +1 -1
  35. package/dist/rules/effect/GiveInfluenceRule.d.ts +2 -0
  36. package/dist/rules/effect/GiveInfluenceRule.d.ts.map +1 -1
  37. package/dist/rules/effect/GiveInfluenceRule.js +21 -2
  38. package/dist/rules/effect/GiveInfluenceRule.js.map +1 -1
  39. package/dist/rules/effect/TakeTechnologyBonusTokenRule.js +2 -2
  40. package/dist/rules/effect/TakeTechnologyBonusTokenRule.js.map +1 -1
  41. package/dist/rules/effect/WinCreditRule.d.ts.map +1 -1
  42. package/dist/rules/effect/WinCreditRule.js +6 -0
  43. package/dist/rules/effect/WinCreditRule.js.map +1 -1
  44. package/dist/rules/effect/WinZenithiumRule.d.ts.map +1 -1
  45. package/dist/rules/effect/WinZenithiumRule.js +5 -0
  46. package/dist/rules/effect/WinZenithiumRule.js.map +1 -1
  47. package/dist/rules/helper/PlayerHelper.d.ts +0 -1
  48. package/dist/rules/helper/PlayerHelper.d.ts.map +1 -1
  49. package/dist/rules/helper/PlayerHelper.js +2 -6
  50. package/dist/rules/helper/PlayerHelper.js.map +1 -1
  51. package/dist/tutorial/TutorialSetup.d.ts +2 -1
  52. package/dist/tutorial/TutorialSetup.d.ts.map +1 -1
  53. package/dist/tutorial/TutorialSetup.js +17 -15
  54. package/dist/tutorial/TutorialSetup.js.map +1 -1
  55. package/dist/tutorial/TutorialSetup.spec.js +46 -36
  56. package/dist/tutorial/TutorialSetup.spec.js.map +1 -1
  57. package/package.json +3 -3
@@ -101,14 +101,16 @@ class EffectTestSetup extends ZenithSetup {
101
101
  id: this.testAgent,
102
102
  location: { type: LocationType.PlayerHand, player: player1 }
103
103
  });
104
- const fillers = agents.filter(a => a !== this.testAgent && !this.opponentInfluenceCards.includes(a) && !this.playerInfluenceCards.includes(a)).slice(0, 3);
104
+ const fillers = agents.filter((a) => a !== this.testAgent && !this.opponentInfluenceCards.includes(a) && !this.playerInfluenceCards.includes(a)).slice(0, 3);
105
105
  for (const agent of fillers) {
106
106
  this.material(MaterialType.AgentCard).createItem({
107
107
  id: agent,
108
108
  location: { type: LocationType.PlayerHand, player: player1 }
109
109
  });
110
110
  }
111
- const p2Fillers = agents.filter(a => a !== this.testAgent && !fillers.includes(a) && !this.opponentInfluenceCards.includes(a) && !this.playerInfluenceCards.includes(a)).slice(0, 4);
111
+ const p2Fillers = agents
112
+ .filter((a) => a !== this.testAgent && !fillers.includes(a) && !this.opponentInfluenceCards.includes(a) && !this.playerInfluenceCards.includes(a))
113
+ .slice(0, 4);
112
114
  for (const agent of p2Fillers) {
113
115
  this.material(MaterialType.AgentCard).createItem({
114
116
  id: agent,
@@ -121,9 +123,9 @@ class EffectTestSetup extends ZenithSetup {
121
123
  this.testAgent,
122
124
  ...this.opponentInfluenceCards,
123
125
  ...this.playerInfluenceCards,
124
- ...agents.filter(a => a !== this.testAgent && !this.opponentInfluenceCards.includes(a) && !this.playerInfluenceCards.includes(a)).slice(0, 7)
126
+ ...agents.filter((a) => a !== this.testAgent && !this.opponentInfluenceCards.includes(a) && !this.playerInfluenceCards.includes(a)).slice(0, 7)
125
127
  ]);
126
- const remaining = agents.filter(a => !usedAgents.has(a));
128
+ const remaining = agents.filter((a) => !usedAgents.has(a));
127
129
  let idx = 0;
128
130
  for (let i = 0; i < this.deckCount && idx < remaining.length; i++, idx++) {
129
131
  this.material(MaterialType.AgentCard).createItem({
@@ -218,7 +220,7 @@ class EffectTestSetup extends ZenithSetup {
218
220
  }
219
221
  }
220
222
  function setupEffects(rules, effects) {
221
- const expandedEffects = effects.map(e => ({
223
+ const expandedEffects = effects.map((e) => ({
222
224
  ...e,
223
225
  effectSource: { type: MaterialType.AgentCard, value: Agent.Elisabeth }
224
226
  }));
@@ -233,38 +235,33 @@ function createRulesWithEffects(opts, effects) {
233
235
  }
234
236
  describe('WinInfluence edge cases', () => {
235
237
  it('opponentSide with no planets on opponent side should skip effect', () => {
236
- const rules = createRulesWithEffects({}, [
237
- { type: EffectType.WinInfluence, quantity: 1, opponentSide: true }
238
- ]);
238
+ const rules = createRulesWithEffects({}, [{ type: EffectType.WinInfluence, quantity: 1, opponentSide: true }]);
239
239
  playConsequences(rules, { type: 'rule', id: RuleId.WinInfluence });
240
240
  const result = resolveAllEffects(rules, player1);
241
241
  expect(result.error).toBeUndefined();
242
242
  });
243
243
  it('differentPlanet with only 1 planet remaining should skip after first pull', () => {
244
- const rules = createRulesWithEffects({}, [
245
- { type: EffectType.WinInfluence, quantity: 1, differentPlanet: true, resetDifferentPlanet: true }
246
- ]);
244
+ const rules = createRulesWithEffects({}, [{ type: EffectType.WinInfluence, quantity: 1, differentPlanet: true, resetDifferentPlanet: true }]);
247
245
  const result = resolveAllEffects(rules, player1);
248
246
  expect(result.error).toBeUndefined();
249
247
  });
250
248
  it('fromCenter with no planets at center should skip', () => {
251
249
  const rules = createRulesWithEffects({
252
250
  planetPositions: {
253
- [Influence.Mercury]: 2, [Influence.Venus]: 2, [Influence.Terra]: 2,
254
- [Influence.Mars]: 2, [Influence.Jupiter]: 2
251
+ [Influence.Mercury]: 2,
252
+ [Influence.Venus]: 2,
253
+ [Influence.Terra]: 2,
254
+ [Influence.Mars]: 2,
255
+ [Influence.Jupiter]: 2
255
256
  }
256
- }, [
257
- { type: EffectType.WinInfluence, quantity: 1, fromCenter: true }
258
- ]);
257
+ }, [{ type: EffectType.WinInfluence, quantity: 1, fromCenter: true }]);
259
258
  const result = resolveAllEffects(rules, player1);
260
259
  expect(result.error).toBeUndefined();
261
260
  });
262
261
  it('planet already at max position (x=4 for White) should still trigger capture', () => {
263
262
  const rules = createRulesWithEffects({
264
263
  planetPositions: { [Influence.Mars]: 3 }
265
- }, [
266
- { type: EffectType.WinInfluence, influence: Influence.Mars, quantity: 1 }
267
- ]);
264
+ }, [{ type: EffectType.WinInfluence, influence: Influence.Mars, quantity: 1 }]);
268
265
  playConsequences(rules, rules.play({ type: 'rule', id: RuleId.WinInfluence })[0] ?? { type: 'rule', id: RuleId.WinInfluence });
269
266
  resolveAutoMoves(rules);
270
267
  const result = resolveAllEffects(rules, player1);
@@ -275,93 +272,76 @@ describe('GiveInfluence edge cases', () => {
275
272
  it('all planets at boundary (x=-4 for White push) should skip', () => {
276
273
  const rules = createRulesWithEffects({
277
274
  planetPositions: {
278
- [Influence.Mercury]: -4, [Influence.Venus]: -4, [Influence.Terra]: -4,
279
- [Influence.Mars]: -4, [Influence.Jupiter]: -4
275
+ [Influence.Mercury]: -4,
276
+ [Influence.Venus]: -4,
277
+ [Influence.Terra]: -4,
278
+ [Influence.Mars]: -4,
279
+ [Influence.Jupiter]: -4
280
280
  }
281
- }, [
282
- { type: EffectType.GiveInfluence }
283
- ]);
281
+ }, [{ type: EffectType.GiveInfluence }]);
284
282
  const result = resolveAllEffects(rules, player1);
285
283
  expect(result.error).toBeUndefined();
286
284
  });
287
285
  it('push planet to -4 should capture for opponent', () => {
288
286
  const rules = createRulesWithEffects({
289
287
  planetPositions: { [Influence.Mars]: -3 }
290
- }, [
291
- { type: EffectType.GiveInfluence }
292
- ]);
288
+ }, [{ type: EffectType.GiveInfluence }]);
293
289
  const result = resolveAllEffects(rules, player1);
294
290
  expect(result.error).toBeUndefined();
295
291
  });
296
292
  it('except planet filter works', () => {
297
293
  const rules = createRulesWithEffects({
298
294
  planetPositions: { [Influence.Mars]: -4 }
299
- }, [
300
- { type: EffectType.GiveInfluence, except: Influence.Mars }
301
- ]);
295
+ }, [{ type: EffectType.GiveInfluence, except: Influence.Mars }]);
302
296
  const result = resolveAllEffects(rules, player1);
303
297
  expect(result.error).toBeUndefined();
304
298
  });
305
299
  });
306
300
  describe('Exile edge cases', () => {
307
301
  it('exile with no influence cards should skip', () => {
308
- const rules = createRulesWithEffects({}, [
309
- { type: EffectType.Exile }
310
- ]);
302
+ const rules = createRulesWithEffects({}, [{ type: EffectType.Exile }]);
311
303
  const result = resolveAllEffects(rules, player1);
312
304
  expect(result.error).toBeUndefined();
313
305
  });
314
306
  it('exile opponent with no opponent influence cards should skip', () => {
315
307
  const rules = createRulesWithEffects({
316
308
  playerInfluenceCards: [Agent.Pkd1ck]
317
- }, [
318
- { type: EffectType.Exile, opponent: true }
319
- ]);
309
+ }, [{ type: EffectType.Exile, opponent: true }]);
320
310
  const result = resolveAllEffects(rules, player1);
321
311
  expect(result.error).toBeUndefined();
322
312
  });
323
313
  it('exile quantity=2 with only 1 card should exile 1 then skip', () => {
324
314
  const rules = createRulesWithEffects({
325
315
  playerInfluenceCards: [Agent.Pkd1ck]
326
- }, [
327
- { type: EffectType.Exile, quantity: 2 }
328
- ]);
316
+ }, [{ type: EffectType.Exile, quantity: 2 }]);
329
317
  const result = resolveAllEffects(rules, player1);
330
318
  expect(result.error).toBeUndefined();
331
319
  });
332
320
  it('exile with specific influence filter and no matching cards should skip', () => {
333
321
  const rules = createRulesWithEffects({
334
322
  playerInfluenceCards: [Agent.Pkd1ck]
335
- }, [
336
- { type: EffectType.Exile, influence: Influence.Venus }
337
- ]);
323
+ }, [{ type: EffectType.Exile, influence: Influence.Venus }]);
338
324
  const result = resolveAllEffects(rules, player1);
339
325
  expect(result.error).toBeUndefined();
340
326
  });
341
327
  });
342
328
  describe('Transfer edge cases', () => {
343
329
  it('transfer with no opponent influence cards should skip', () => {
344
- const rules = createRulesWithEffects({}, [
345
- { type: EffectType.Transfer }
346
- ]);
330
+ const rules = createRulesWithEffects({}, [{ type: EffectType.Transfer }]);
347
331
  const result = resolveAllEffects(rules, player1);
348
332
  expect(result.error).toBeUndefined();
349
333
  });
350
334
  it('transfer quantity=2 with only 1 opponent card should skip (isPossible checks quantity)', () => {
351
335
  const rules = createRulesWithEffects({
352
336
  opponentInfluenceCards: [Agent.Pkd1ck]
353
- }, [
354
- { type: EffectType.Transfer, quantity: 2 }
355
- ]);
337
+ }, [{ type: EffectType.Transfer, quantity: 2 }]);
356
338
  const result = resolveAllEffects(rules, player1);
357
339
  expect(result.error).toBeUndefined();
358
340
  });
359
341
  it('transfer with specific influence and matching opponent cards should not block', () => {
360
342
  const rules = createRulesWithEffects({
361
343
  opponentInfluenceCards: [Agent.Pkd1ck]
362
- }, [
363
- { type: EffectType.Transfer, influence: Influence.Mercury }
364
- ]);
344
+ }, [{ type: EffectType.Transfer, influence: Influence.Mercury }]);
365
345
  const result = resolveAllEffects(rules, player1);
366
346
  expect(result.error).toBeUndefined();
367
347
  });
@@ -370,18 +350,14 @@ describe('GiveCredit edge cases', () => {
370
350
  it('give credits with 0 credits should skip', () => {
371
351
  const rules = createRulesWithEffects({
372
352
  playerCredits: 0
373
- }, [
374
- { type: EffectType.GiveCredit, quantity: 3 }
375
- ]);
353
+ }, [{ type: EffectType.GiveCredit, quantity: 3 }]);
376
354
  const result = resolveAllEffects(rules, player1);
377
355
  expect(result.error).toBeUndefined();
378
356
  });
379
357
  it('give credits with insufficient credits should skip', () => {
380
358
  const rules = createRulesWithEffects({
381
359
  playerCredits: 2
382
- }, [
383
- { type: EffectType.GiveCredit, quantity: 5 }
384
- ]);
360
+ }, [{ type: EffectType.GiveCredit, quantity: 5 }]);
385
361
  const result = resolveAllEffects(rules, player1);
386
362
  expect(result.error).toBeUndefined();
387
363
  });
@@ -390,9 +366,7 @@ describe('StealCredit edge cases', () => {
390
366
  it('steal credits from opponent with 0 credits should skip', () => {
391
367
  const rules = createRulesWithEffects({
392
368
  opponentCredits: 0
393
- }, [
394
- { type: EffectType.StealCredit, quantity: 2 }
395
- ]);
369
+ }, [{ type: EffectType.StealCredit, quantity: 2 }]);
396
370
  const result = resolveAllEffects(rules, player1);
397
371
  expect(result.error).toBeUndefined();
398
372
  });
@@ -401,9 +375,7 @@ describe('GiveZenithium edge cases', () => {
401
375
  it('give zenithium with 0 zenithium should skip', () => {
402
376
  const rules = createRulesWithEffects({
403
377
  playerZenithium: 0
404
- }, [
405
- { type: EffectType.GiveZenithium, quantity: 1 }
406
- ]);
378
+ }, [{ type: EffectType.GiveZenithium, quantity: 1 }]);
407
379
  const result = resolveAllEffects(rules, player1);
408
380
  expect(result.error).toBeUndefined();
409
381
  });
@@ -412,18 +384,14 @@ describe('SpendCredit edge cases', () => {
412
384
  it('spend credits with 0 credits should skip', () => {
413
385
  const rules = createRulesWithEffects({
414
386
  playerCredits: 0
415
- }, [
416
- { type: EffectType.SpendCredit, quantities: [2, 4, 6], factors: [1, 2, 3] }
417
- ]);
387
+ }, [{ type: EffectType.SpendCredit, quantities: [2, 4, 6], factors: [1, 2, 3] }]);
418
388
  const result = resolveAllEffects(rules, player1);
419
389
  expect(result.error).toBeUndefined();
420
390
  });
421
391
  it('spend credits with insufficient for all tiers should skip', () => {
422
392
  const rules = createRulesWithEffects({
423
393
  playerCredits: 1
424
- }, [
425
- { type: EffectType.SpendCredit, quantities: [2, 4, 6], factors: [1, 2, 3] }
426
- ]);
394
+ }, [{ type: EffectType.SpendCredit, quantities: [2, 4, 6], factors: [1, 2, 3] }]);
427
395
  const result = resolveAllEffects(rules, player1);
428
396
  expect(result.error).toBeUndefined();
429
397
  });
@@ -432,9 +400,7 @@ describe('SpendZenithium edge cases', () => {
432
400
  it('spend zenithium with 0 zenithium should skip', () => {
433
401
  const rules = createRulesWithEffects({
434
402
  playerZenithium: 0
435
- }, [
436
- { type: EffectType.SpendZenithium, quantities: [1, 2], factors: [1, 2] }
437
- ]);
403
+ }, [{ type: EffectType.SpendZenithium, quantities: [1, 2], factors: [1, 2] }]);
438
404
  const result = resolveAllEffects(rules, player1);
439
405
  expect(result.error).toBeUndefined();
440
406
  });
@@ -457,12 +423,13 @@ describe('ResetInfluence edge cases', () => {
457
423
  it('reset influence with no planets on player side should skip', () => {
458
424
  const rules = createRulesWithEffects({
459
425
  planetPositions: {
460
- [Influence.Mercury]: -2, [Influence.Venus]: -1, [Influence.Terra]: 0,
461
- [Influence.Mars]: -1, [Influence.Jupiter]: -2
426
+ [Influence.Mercury]: -2,
427
+ [Influence.Venus]: -1,
428
+ [Influence.Terra]: 0,
429
+ [Influence.Mars]: -1,
430
+ [Influence.Jupiter]: -2
462
431
  }
463
- }, [
464
- { type: EffectType.ResetInfluence }
465
- ]);
432
+ }, [{ type: EffectType.ResetInfluence }]);
466
433
  const result = resolveAllEffects(rules, player1);
467
434
  expect(result.error).toBeUndefined();
468
435
  });
@@ -592,17 +559,20 @@ describe('Chained effect sequences', () => {
592
559
  }, [
593
560
  { type: EffectType.WinInfluence, influence: Influence.Mars, quantity: 1 },
594
561
  {
595
- type: EffectType.Conditional, mandatory: true,
562
+ type: EffectType.Conditional,
563
+ mandatory: true,
596
564
  condition: { type: ConditionType.DoEffect, effect: { type: EffectType.Mobilize } },
597
565
  effect: { type: EffectType.WinInfluence, quantity: 1 }
598
566
  },
599
567
  {
600
- type: EffectType.Conditional, mandatory: true,
568
+ type: EffectType.Conditional,
569
+ mandatory: true,
601
570
  condition: { type: ConditionType.DoEffect, effect: { type: EffectType.Mobilize } },
602
571
  effect: { type: EffectType.WinInfluence, quantity: 1 }
603
572
  },
604
573
  {
605
- type: EffectType.Conditional, mandatory: true,
574
+ type: EffectType.Conditional,
575
+ mandatory: true,
606
576
  condition: { type: ConditionType.DoEffect, effect: { type: EffectType.Mobilize } },
607
577
  effect: { type: EffectType.WinInfluence, quantity: 1 }
608
578
  }
@@ -617,12 +587,14 @@ describe('Chained effect sequences', () => {
617
587
  }, [
618
588
  { type: EffectType.WinInfluence, influence: Influence.Mars, quantity: 1 },
619
589
  {
620
- type: EffectType.Conditional, mandatory: true,
590
+ type: EffectType.Conditional,
591
+ mandatory: true,
621
592
  condition: { type: ConditionType.DoEffect, effect: { type: EffectType.Mobilize } },
622
593
  effect: { type: EffectType.WinInfluence, quantity: 1 }
623
594
  },
624
595
  {
625
- type: EffectType.Conditional, mandatory: true,
596
+ type: EffectType.Conditional,
597
+ mandatory: true,
626
598
  condition: { type: ConditionType.DoEffect, effect: { type: EffectType.Mobilize } },
627
599
  effect: { type: EffectType.WinInfluence, quantity: 1 }
628
600
  }
@@ -636,9 +608,7 @@ describe('Mobilize edge cases', () => {
636
608
  const rules = createRulesWithEffects({
637
609
  deckCount: 2,
638
610
  discardCount: 0
639
- }, [
640
- { type: EffectType.Mobilize, quantity: 2 }
641
- ]);
611
+ }, [{ type: EffectType.Mobilize, quantity: 2 }]);
642
612
  const result = resolveAllEffects(rules, player1);
643
613
  expect(result.error).toBeUndefined();
644
614
  });
@@ -646,9 +616,7 @@ describe('Mobilize edge cases', () => {
646
616
  const rules = createRulesWithEffects({
647
617
  deckCount: 1,
648
618
  discardCount: 0
649
- }, [
650
- { type: EffectType.Mobilize, quantity: 3 }
651
- ]);
619
+ }, [{ type: EffectType.Mobilize, quantity: 3 }]);
652
620
  const result = resolveAllEffects(rules, player1);
653
621
  expect(result.error).toBeUndefined();
654
622
  });
@@ -657,7 +625,8 @@ describe('Mobilize edge cases', () => {
657
625
  deckCount: 5
658
626
  }, [
659
627
  {
660
- type: EffectType.Conditional, mandatory: true,
628
+ type: EffectType.Conditional,
629
+ mandatory: true,
661
630
  condition: { type: ConditionType.DoEffect, effect: { type: EffectType.Mobilize, quantity: 2 } },
662
631
  effect: { type: EffectType.WinInfluence, quantity: 1 }
663
632
  }
@@ -668,39 +637,29 @@ describe('Mobilize edge cases', () => {
668
637
  });
669
638
  describe('WinCredit edge cases', () => {
670
639
  it('perLevel1Technology with no techs should give 0 credits (not block)', () => {
671
- const rules = createRulesWithEffects({}, [
672
- { type: EffectType.WinCredit, perLevel1Technology: [Faction.Human] }
673
- ]);
640
+ const rules = createRulesWithEffects({}, [{ type: EffectType.WinCredit, perLevel1Technology: [Faction.Human] }]);
674
641
  const result = resolveAllEffects(rules, player1);
675
642
  expect(result.error).toBeUndefined();
676
643
  });
677
644
  it('factorPerDifferentInfluence with no influence cards should give 0', () => {
678
- const rules = createRulesWithEffects({}, [
679
- { type: EffectType.WinCredit, factorPerDifferentInfluence: 2 }
680
- ]);
645
+ const rules = createRulesWithEffects({}, [{ type: EffectType.WinCredit, factorPerDifferentInfluence: 2 }]);
681
646
  const result = resolveAllEffects(rules, player1);
682
647
  expect(result.error).toBeUndefined();
683
648
  });
684
649
  it('factorPerDifferentOpponentInfluence with no opponent cards should give 0', () => {
685
- const rules = createRulesWithEffects({}, [
686
- { type: EffectType.WinCredit, factorPerDifferentOpponentInfluence: 2 }
687
- ]);
650
+ const rules = createRulesWithEffects({}, [{ type: EffectType.WinCredit, factorPerDifferentOpponentInfluence: 2 }]);
688
651
  const result = resolveAllEffects(rules, player1);
689
652
  expect(result.error).toBeUndefined();
690
653
  });
691
654
  });
692
655
  describe('WinZenithium edge cases', () => {
693
656
  it('perLevel1Technology with no techs should give 0 zenithium', () => {
694
- const rules = createRulesWithEffects({}, [
695
- { type: EffectType.WinZenithium, perLevel1Technology: [Faction.Human] }
696
- ]);
657
+ const rules = createRulesWithEffects({}, [{ type: EffectType.WinZenithium, perLevel1Technology: [Faction.Human] }]);
697
658
  const result = resolveAllEffects(rules, player1);
698
659
  expect(result.error).toBeUndefined();
699
660
  });
700
661
  it('opponent=true should give zenithium to opponent', () => {
701
- const rules = createRulesWithEffects({}, [
702
- { type: EffectType.WinZenithium, quantity: 1, opponent: true }
703
- ]);
662
+ const rules = createRulesWithEffects({}, [{ type: EffectType.WinZenithium, quantity: 1, opponent: true }]);
704
663
  const result = resolveAllEffects(rules, player1);
705
664
  expect(result.error).toBeUndefined();
706
665
  });
@@ -709,21 +668,17 @@ describe('StealZenithium', () => {
709
668
  it('should steal zenithium from opponent', () => {
710
669
  const rules = createRulesWithEffects({
711
670
  playerZenithium: 1
712
- }, [
713
- { type: EffectType.StealZenithium, quantity: 1 }
714
- ]);
671
+ }, [{ type: EffectType.StealZenithium, quantity: 1 }]);
715
672
  rules.game.rule = { id: RuleId.StealZenithium, player: player1 };
716
673
  resolveAutoMoves(rules);
717
- const totalZen = rules.material(MaterialType.ZenithiumToken)
718
- .location(LocationType.TeamZenithium).getQuantity();
674
+ const totalZen = rules.material(MaterialType.ZenithiumToken).location(LocationType.TeamZenithium).getQuantity();
719
675
  expect(totalZen).toBe(4);
720
676
  });
721
677
  it('should skip when opponent has no zenithium', () => {
722
678
  const setup = new EffectTestSetup({});
723
679
  const game = setup.setup({ players: [{}, {}], animodBoard: 'S', humanBoard: 'U', robotBoard: 'N' });
724
680
  const rules = new ZenithRules(game);
725
- const opponentZen = rules.material(MaterialType.ZenithiumToken)
726
- .location(LocationType.TeamZenithium).player(TeamColor.Black);
681
+ const opponentZen = rules.material(MaterialType.ZenithiumToken).location(LocationType.TeamZenithium).player(TeamColor.Black);
727
682
  if (opponentZen.length) {
728
683
  playConsequences(rules, opponentZen.deleteItem());
729
684
  }
@@ -734,16 +689,12 @@ describe('StealZenithium', () => {
734
689
  });
735
690
  describe('Technology board alternative effects', () => {
736
691
  it('Board D level 4: WinInfluence pattern [1,1,1,1,1] should influence all planets', () => {
737
- const rules = createRulesWithEffects({}, [
738
- { type: EffectType.WinInfluence, pattern: [1, 1, 1, 1, 1] }
739
- ]);
692
+ const rules = createRulesWithEffects({}, [{ type: EffectType.WinInfluence, pattern: [1, 1, 1, 1, 1] }]);
740
693
  const result = resolveAllEffects(rules, player1);
741
694
  expect(result.error).toBeUndefined();
742
695
  });
743
696
  it('Board O level 4: WinInfluence pattern [2,2] should influence 2 adjacent planets', () => {
744
- const rules = createRulesWithEffects({}, [
745
- { type: EffectType.WinInfluence, pattern: [2, 2] }
746
- ]);
697
+ const rules = createRulesWithEffects({}, [{ type: EffectType.WinInfluence, pattern: [2, 2] }]);
747
698
  const result = resolveAllEffects(rules, player1);
748
699
  expect(result.error).toBeUndefined();
749
700
  });
@@ -806,7 +757,7 @@ describe('Board options', () => {
806
757
  const game = setup.setup({ players: [{}, {}], animodBoard: 'S', humanBoard: 'U', robotBoard: 'N' });
807
758
  const rules = new ZenithRules(game);
808
759
  const boards = rules.material(MaterialType.TechnologyBoard).getItems();
809
- const ids = boards.map(b => b.id).sort();
760
+ const ids = boards.map((b) => b.id).sort();
810
761
  expect(ids).toEqual(['N', 'S', 'U']);
811
762
  });
812
763
  it('should use D/O/P sides when specified', () => {
@@ -814,7 +765,7 @@ describe('Board options', () => {
814
765
  const game = setup.setup({ players: [{}, {}], animodBoard: 'D', humanBoard: 'O', robotBoard: 'P' });
815
766
  const rules = new ZenithRules(game);
816
767
  const boards = rules.material(MaterialType.TechnologyBoard).getItems();
817
- const ids = boards.map(b => b.id).sort();
768
+ const ids = boards.map((b) => b.id).sort();
818
769
  expect(ids).toEqual(['D', 'O', 'P']);
819
770
  });
820
771
  it('should use random faces when no option specified', () => {
@@ -822,11 +773,11 @@ describe('Board options', () => {
822
773
  const game = setup.setup({ players: [{}, {}] });
823
774
  const rules = new ZenithRules(game);
824
775
  const boards = rules.material(MaterialType.TechnologyBoard).getItems();
825
- const ids = boards.map(b => b.id);
776
+ const ids = boards.map((b) => b.id);
826
777
  expect(ids.length).toBe(3);
827
- expect(['S', 'D']).toContain(ids.find(id => ['S', 'D'].includes(id)));
828
- expect(['U', 'O']).toContain(ids.find(id => ['U', 'O'].includes(id)));
829
- expect(['N', 'P']).toContain(ids.find(id => ['N', 'P'].includes(id)));
778
+ expect(['S', 'D']).toContain(ids.find((id) => ['S', 'D'].includes(id)));
779
+ expect(['U', 'O']).toContain(ids.find((id) => ['U', 'O'].includes(id)));
780
+ expect(['N', 'P']).toContain(ids.find((id) => ['N', 'P'].includes(id)));
830
781
  });
831
782
  });
832
783
  //# sourceMappingURL=EffectEdgeCases.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EffectEdgeCases.spec.js","sourceRoot":"","sources":["../../../src/rules/effect/EffectEdgeCases.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EffectEdgeCases.spec.js","sourceRoot":"","sources":["../../../src/rules/effect/EffectEdgeCases.spec.ts"],"names":[],"mappings":"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"}