@gamebob/axon-surge 0.28.0 → 0.30.0

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 (108) hide show
  1. package/dist/axon-surge.js +4862 -1917
  2. package/dist/codex/DefaultCodex.d.ts.map +1 -1
  3. package/dist/config/GameConfig.d.ts +5 -0
  4. package/dist/config/GameConfig.d.ts.map +1 -1
  5. package/dist/content/ContentRegistry.d.ts +3 -2
  6. package/dist/content/ContentRegistry.d.ts.map +1 -1
  7. package/dist/content/ContentTypes.d.ts +31 -3
  8. package/dist/content/ContentTypes.d.ts.map +1 -1
  9. package/dist/content/DefaultContentRegistry.d.ts.map +1 -1
  10. package/dist/content/DefaultHeavyVariants.d.ts +3 -0
  11. package/dist/content/DefaultHeavyVariants.d.ts.map +1 -0
  12. package/dist/content/DefaultTutorials.d.ts +3 -0
  13. package/dist/content/DefaultTutorials.d.ts.map +1 -0
  14. package/dist/content/EnemyBehavior.d.ts +5 -0
  15. package/dist/content/EnemyBehavior.d.ts.map +1 -1
  16. package/dist/content/EnemyBehaviors.d.ts +5 -0
  17. package/dist/content/EnemyBehaviors.d.ts.map +1 -1
  18. package/dist/content/EnemyDefinitions.d.ts.map +1 -1
  19. package/dist/core/CoreInteractionController.d.ts +23 -0
  20. package/dist/core/CoreInteractionController.d.ts.map +1 -0
  21. package/dist/core/GameEngine.d.ts +17 -0
  22. package/dist/core/GameEngine.d.ts.map +1 -1
  23. package/dist/director/InteractiveTutorial.d.ts +27 -11
  24. package/dist/director/InteractiveTutorial.d.ts.map +1 -1
  25. package/dist/director/SpawnerPatterns.d.ts +8 -7
  26. package/dist/director/SpawnerPatterns.d.ts.map +1 -1
  27. package/dist/director/WaveDirector.d.ts +2 -0
  28. package/dist/director/WaveDirector.d.ts.map +1 -1
  29. package/dist/entities/CoreEntity.d.ts +23 -0
  30. package/dist/entities/CoreEntity.d.ts.map +1 -1
  31. package/dist/entities/EnemyEntity.d.ts +18 -0
  32. package/dist/entities/EnemyEntity.d.ts.map +1 -1
  33. package/dist/entities/RepelWaveProjectile.d.ts +25 -0
  34. package/dist/entities/RepelWaveProjectile.d.ts.map +1 -0
  35. package/dist/factory/EntityFactory.d.ts +10 -1
  36. package/dist/factory/EntityFactory.d.ts.map +1 -1
  37. package/dist/i18n/locales.d.ts +61 -0
  38. package/dist/i18n/locales.d.ts.map +1 -1
  39. package/dist/input/InputManager.d.ts +4 -0
  40. package/dist/input/InputManager.d.ts.map +1 -1
  41. package/dist/physics/EffectClusterer.d.ts.map +1 -1
  42. package/dist/physics/PhysicsEngine.d.ts +1 -1
  43. package/dist/physics/PhysicsEngine.d.ts.map +1 -1
  44. package/dist/physics/handlers/CoreCollisionHandler.d.ts +6 -0
  45. package/dist/physics/handlers/CoreCollisionHandler.d.ts.map +1 -1
  46. package/dist/physics/handlers/SmasherCollisionHandler.d.ts +9 -0
  47. package/dist/physics/handlers/SmasherCollisionHandler.d.ts.map +1 -0
  48. package/dist/physics/handlers/ThrownCollisionHandler.d.ts.map +1 -1
  49. package/dist/physics/handlers/VortexPhysicsHandler.d.ts.map +1 -1
  50. package/dist/powerups/PowerUpRegistry.d.ts +1 -1
  51. package/dist/powerups/PowerUpRegistry.d.ts.map +1 -1
  52. package/dist/powerups/PowerUpTypes.d.ts +1 -0
  53. package/dist/powerups/PowerUpTypes.d.ts.map +1 -1
  54. package/dist/progression/CoreProgressionTypes.d.ts +53 -0
  55. package/dist/progression/CoreProgressionTypes.d.ts.map +1 -0
  56. package/dist/progression/CoreRoster.d.ts +40 -0
  57. package/dist/progression/CoreRoster.d.ts.map +1 -0
  58. package/dist/progression/CoreRosterStorage.d.ts +9 -0
  59. package/dist/progression/CoreRosterStorage.d.ts.map +1 -0
  60. package/dist/progression/CoreRosterValidation.d.ts +3 -0
  61. package/dist/progression/CoreRosterValidation.d.ts.map +1 -0
  62. package/dist/progression/CoreWisdomPassives.d.ts +4 -0
  63. package/dist/progression/CoreWisdomPassives.d.ts.map +1 -0
  64. package/dist/progression/DefaultCoreRoster.d.ts +3 -0
  65. package/dist/progression/DefaultCoreRoster.d.ts.map +1 -0
  66. package/dist/progression/DefaultGeneticMemory.d.ts.map +1 -1
  67. package/dist/progression/GeneticMemory.d.ts +1 -0
  68. package/dist/progression/GeneticMemory.d.ts.map +1 -1
  69. package/dist/render/CanvasRenderer.d.ts +7 -1
  70. package/dist/render/CanvasRenderer.d.ts.map +1 -1
  71. package/dist/render/EnemyRenderer.d.ts +20 -0
  72. package/dist/render/EnemyRenderer.d.ts.map +1 -0
  73. package/dist/render/EnemyRendererRegistry.d.ts +11 -0
  74. package/dist/render/EnemyRendererRegistry.d.ts.map +1 -0
  75. package/dist/render/EnemyShapeRenderer.d.ts +1 -8
  76. package/dist/render/EnemyShapeRenderer.d.ts.map +1 -1
  77. package/dist/render/SmasherRenderer.d.ts +15 -0
  78. package/dist/render/SmasherRenderer.d.ts.map +1 -0
  79. package/dist/render/TutorialArrowRenderer.d.ts +2 -0
  80. package/dist/render/TutorialArrowRenderer.d.ts.map +1 -1
  81. package/dist/render/renderers/CircleEnemyRenderer.d.ts +5 -0
  82. package/dist/render/renderers/CircleEnemyRenderer.d.ts.map +1 -0
  83. package/dist/render/renderers/ClusterEnemyRenderer.d.ts +5 -0
  84. package/dist/render/renderers/ClusterEnemyRenderer.d.ts.map +1 -0
  85. package/dist/render/renderers/HeavyEnemyRenderer.d.ts +8 -0
  86. package/dist/render/renderers/HeavyEnemyRenderer.d.ts.map +1 -0
  87. package/dist/render/renderers/MononreuronalVisuals.d.ts +4 -0
  88. package/dist/render/renderers/MononreuronalVisuals.d.ts.map +1 -0
  89. package/dist/render/renderers/ParasiteEnemyRenderer.d.ts +5 -0
  90. package/dist/render/renderers/ParasiteEnemyRenderer.d.ts.map +1 -0
  91. package/dist/render/renderers/PiercerEnemyRenderer.d.ts +5 -0
  92. package/dist/render/renderers/PiercerEnemyRenderer.d.ts.map +1 -0
  93. package/dist/render/renderers/SporeEnemyRenderer.d.ts +5 -0
  94. package/dist/render/renderers/SporeEnemyRenderer.d.ts.map +1 -0
  95. package/dist/styles.css +1 -1
  96. package/dist/types/game.d.ts +1 -0
  97. package/dist/types/game.d.ts.map +1 -1
  98. package/dist/ui/CodexOverlay.d.ts.map +1 -1
  99. package/dist/ui/CodexVariantCanvas.d.ts +1 -0
  100. package/dist/ui/CodexVariantCanvas.d.ts.map +1 -1
  101. package/dist/ui/CoreRosterOverlay.d.ts +35 -0
  102. package/dist/ui/CoreRosterOverlay.d.ts.map +1 -0
  103. package/dist/ui/CoreRunSummaryOverlay.d.ts +18 -0
  104. package/dist/ui/CoreRunSummaryOverlay.d.ts.map +1 -0
  105. package/dist/ui/StartMenu.d.ts +4 -1
  106. package/dist/ui/StartMenu.d.ts.map +1 -1
  107. package/dist/ui/TutorialOverlay.d.ts.map +1 -1
  108. package/package.json +1 -1
@@ -0,0 +1,25 @@
1
+ import type { Vector2D } from "../types/game";
2
+ export declare class RepelWaveProjectile {
3
+ private readonly origin;
4
+ readonly position: Vector2D;
5
+ readonly previousPosition: Vector2D;
6
+ readonly target: Vector2D;
7
+ readonly color: string;
8
+ readonly isTouch: boolean;
9
+ readonly radius = 9;
10
+ active: boolean;
11
+ private readonly speed;
12
+ private readonly duration;
13
+ private readonly controlPoint;
14
+ private elapsed;
15
+ constructor(options: {
16
+ origin: Vector2D;
17
+ target: Vector2D;
18
+ color: string;
19
+ speed: number;
20
+ isTouch: boolean;
21
+ });
22
+ update(dt: number): boolean;
23
+ private positionAtStart;
24
+ }
25
+ //# sourceMappingURL=RepelWaveProjectile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RepelWaveProjectile.d.ts","sourceRoot":"","sources":["../../src/entities/RepelWaveProjectile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,qBAAa,mBAAmB;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAW;IAClC,SAAgB,QAAQ,EAAE,QAAQ,CAAC;IACnC,SAAgB,gBAAgB,EAAE,QAAQ,CAAC;IAC3C,SAAgB,MAAM,EAAE,QAAQ,CAAC;IACjC,SAAgB,KAAK,EAAE,MAAM,CAAC;IAC9B,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,SAAgB,MAAM,KAAK;IACpB,MAAM,UAAQ;IAErB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAW;IACxC,OAAO,CAAC,OAAO,CAAK;gBAED,OAAO,EAAE;QACxB,MAAM,EAAE,QAAQ,CAAC;QACjB,MAAM,EAAE,QAAQ,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,OAAO,CAAC;KACpB;IAmBM,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IA0BlC,OAAO,CAAC,eAAe;CAG1B"}
@@ -1,10 +1,19 @@
1
1
  import { EnemyEntity } from "../entities/EnemyEntity";
2
2
  import type { Vector2D, EnemyType } from "../types/game";
3
3
  import type { ContentRegistry } from "../content/ContentRegistry";
4
+ export interface EnemyConfiguration {
5
+ readonly spawnPos: Vector2D;
6
+ readonly corePos: Vector2D;
7
+ readonly variantId?: string | undefined;
8
+ }
4
9
  export declare class EntityFactory {
5
10
  private readonly content;
6
11
  constructor(content: ContentRegistry);
7
12
  createEnemy(type: EnemyType, spawnPos: Vector2D, corePos: Vector2D): EnemyEntity;
8
- configureEnemy(enemy: EnemyEntity, type: EnemyType, spawnPos: Vector2D, corePos: Vector2D): void;
13
+ configureEnemy(enemy: EnemyEntity, type: EnemyType, configuration: EnemyConfiguration): void;
14
+ private resolveVariant;
15
+ private applyVariantRules;
16
+ private applyDefinition;
17
+ private applyMotion;
9
18
  }
10
19
  //# sourceMappingURL=EntityFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntityFactory.d.ts","sourceRoot":"","sources":["../../src/factory/EntityFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAElE,qBAAa,aAAa;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,eAAe;IAErD,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,GAAG,WAAW;IAOhF,cAAc,CACjB,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,SAAS,EACf,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,QAAQ,GAClB,IAAI;CA2BV"}
1
+ {"version":3,"file":"EntityFactory.d.ts","sourceRoot":"","sources":["../../src/factory/EntityFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AA0DlE,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3C;AAED,qBAAa,aAAa;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,eAAe;IAErD,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,GAAG,WAAW;IAOhF,cAAc,CACjB,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,SAAS,EACf,aAAa,EAAE,kBAAkB,GAClC,IAAI;IAcP,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,WAAW;CAetB"}
@@ -24,6 +24,12 @@ export interface Translations {
24
24
  tutorialStep1Text: string;
25
25
  tutorialStep2Text: string;
26
26
  tutorialDragWarning: string;
27
+ tutorialRepellentStep1Text: string;
28
+ tutorialRepellentStep2Text: string;
29
+ tutorialRepellentWarning: string;
30
+ tutorialSmasherStep1Text: string;
31
+ tutorialSmasherStep2Text: string;
32
+ tutorialSmasherWarning: string;
27
33
  levelUpChoose?: string;
28
34
  rerollButton?: string;
29
35
  geneticMemoryButton?: string;
@@ -62,6 +68,22 @@ export interface Translations {
62
68
  codexElCapatazTitle?: string;
63
69
  codexElCapatazLore?: string;
64
70
  codexPiercerTitle?: string;
71
+ codexPiercerMononreuronalTitle?: string;
72
+ codexPiercerMononreuronalDescription?: string;
73
+ codexPiercerBloodSwordTitle?: string;
74
+ codexPiercerBloodSwordDescription?: string;
75
+ codexPiercerTraitorTitle?: string;
76
+ codexPiercerTraitorDescription?: string;
77
+ codexSporeCamuflaesporaTitle?: string;
78
+ codexSporeCamuflaesporaDescription?: string;
79
+ codexClusterOrbitalTitle?: string;
80
+ codexClusterOrbitalDescription?: string;
81
+ codexParasiteAntiChucladorTitle?: string;
82
+ codexParasiteAntiChucladorDescription?: string;
83
+ codexHeavyBulwarkTitle?: string;
84
+ codexHeavyBulwarkDescription?: string;
85
+ codexMononreuronalTitle?: string;
86
+ codexMononreuronalDescription?: string;
65
87
  codexSporeTitle?: string;
66
88
  codexClusterTitle?: string;
67
89
  codexParasiteTitle?: string;
@@ -102,6 +124,45 @@ export interface Translations {
102
124
  geneticTypePassive: string;
103
125
  geneticTypeEnemy: string;
104
126
  geneticTypeCore: string;
127
+ coreRosterTitle: string;
128
+ coreRosterButton: string;
129
+ coreRosterHint: string;
130
+ coreRosterPreview: string;
131
+ coreRosterActionSequence: string;
132
+ coreRosterCodePrefix: string;
133
+ coreRosterCombatProfile: string;
134
+ coreRosterStats: string;
135
+ coreRosterStatControl: string;
136
+ coreRosterStatImpact: string;
137
+ coreRosterStatReach: string;
138
+ coreRosterStatStability: string;
139
+ coreRosterStyle: string;
140
+ coreRosterCurrent: string;
141
+ coreRosterSelected: string;
142
+ coreRosterSelect: string;
143
+ coreRosterLocked: string;
144
+ coreRosterWisdom: string;
145
+ coreRosterSkillPoints: string;
146
+ coreRosterNext: string;
147
+ coreRosterNoNext: string;
148
+ coreOriginStyleDescription: string;
149
+ coreLauncherTitle: string;
150
+ coreLauncherDescription: string;
151
+ coreLauncherStyleDescription: string;
152
+ coreRepellentTitle: string;
153
+ coreRepellentDescription: string;
154
+ coreRepellentStyleDescription: string;
155
+ coreSmasherTitle: string;
156
+ coreSmasherDescription: string;
157
+ coreSmasherStyleDescription: string;
158
+ coreRunSummaryTitle: string;
159
+ coreRunSummarySubtitle: string;
160
+ coreRunSummaryLevel: string;
161
+ coreRunSummarySkillPoints: string;
162
+ coreRunSummaryWisdom: string;
163
+ coreRunSummaryUnlocks: string;
164
+ coreRunSummaryNoUnlocks: string;
165
+ coreRunSummaryClose: string;
105
166
  geneticOriginTitle?: string;
106
167
  geneticOriginDescription?: string;
107
168
  geneticCoreResonanceTitle?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../src/i18n/locales.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../src/i18n/locales.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,8 @@ import type { GameConfigManager } from "../config/GameConfig";
5
5
  export declare class InputManager {
6
6
  pointerPosition: Vector2D;
7
7
  isPointerDown: boolean;
8
+ hasPointerPosition: boolean;
9
+ lastPointerWasTouch: boolean;
8
10
  grabbedEnemy: EnemyEntity | null;
9
11
  grabbedOrb: OrbitingModifierOrb | null;
10
12
  dragStart: Vector2D | null;
@@ -15,8 +17,10 @@ export declare class InputManager {
15
17
  private updatePointerPos;
16
18
  private bindEvents;
17
19
  tryGrab(enemies: EnemyEntity[], isTouch?: boolean): EnemyEntity | null;
20
+ emitRepelWave(enemies: EnemyEntity[], origin: Vector2D, isTouch?: boolean, fallbackOrigin?: Vector2D): EnemyEntity[];
18
21
  tryGrabOrb(orbs: OrbitingModifierOrb[], isTouch?: boolean): OrbitingModifierOrb | null;
19
22
  releaseAndThrow(): EnemyEntity | null;
23
+ releaseGrabbedEnemy(): EnemyEntity | null;
20
24
  forceRelease(): void;
21
25
  reset(): void;
22
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InputManager.d.ts","sourceRoot":"","sources":["../../src/input/InputManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAQ9D,qBAAa,YAAY;IACd,eAAe,EAAE,QAAQ,CAAkB;IAC3C,aAAa,EAAE,OAAO,CAAS;IAC/B,YAAY,EAAE,WAAW,GAAG,IAAI,CAAQ;IACxC,UAAU,EAAE,mBAAmB,GAAG,IAAI,CAAQ;IAC9C,SAAS,EAAE,QAAQ,GAAG,IAAI,CAAQ;IAEzC,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;gBAEtC,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,iBAAiB;IAMvE,OAAO,CAAC,gBAAgB;IAwBxB,OAAO,CAAC,UAAU;IAwDX,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,OAAO,GAAE,OAAe,GAAG,WAAW,GAAG,IAAI;IA8B7E,UAAU,CACb,IAAI,EAAE,mBAAmB,EAAE,EAC3B,OAAO,GAAE,OAAe,GACzB,mBAAmB,GAAG,IAAI;IAmBtB,eAAe,IAAI,WAAW,GAAG,IAAI;IA8DrC,YAAY,IAAI,IAAI;IAgBpB,KAAK,IAAI,IAAI;CAOvB"}
1
+ {"version":3,"file":"InputManager.d.ts","sourceRoot":"","sources":["../../src/input/InputManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAQ9D,qBAAa,YAAY;IACd,eAAe,EAAE,QAAQ,CAAkB;IAC3C,aAAa,EAAE,OAAO,CAAS;IAC/B,kBAAkB,EAAE,OAAO,CAAS;IACpC,mBAAmB,EAAE,OAAO,CAAS;IACrC,YAAY,EAAE,WAAW,GAAG,IAAI,CAAQ;IACxC,UAAU,EAAE,mBAAmB,GAAG,IAAI,CAAQ;IAC9C,SAAS,EAAE,QAAQ,GAAG,IAAI,CAAQ;IAEzC,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;gBAEtC,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,iBAAiB;IAMvE,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,UAAU;IA4DX,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,OAAO,GAAE,OAAe,GAAG,WAAW,GAAG,IAAI;IA8B7E,aAAa,CAChB,OAAO,EAAE,WAAW,EAAE,EACtB,MAAM,EAAE,QAAQ,EAChB,OAAO,GAAE,OAAe,EACxB,cAAc,GAAE,QAAiB,GAClC,WAAW,EAAE;IAuDT,UAAU,CACb,IAAI,EAAE,mBAAmB,EAAE,EAC3B,OAAO,GAAE,OAAe,GACzB,mBAAmB,GAAG,IAAI;IAmBtB,eAAe,IAAI,WAAW,GAAG,IAAI;IA8DrC,mBAAmB,IAAI,WAAW,GAAG,IAAI;IAUzC,YAAY,IAAI,IAAI;IAgBpB,KAAK,IAAI,IAAI;CAOvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"EffectClusterer.d.ts","sourceRoot":"","sources":["../../src/physics/EffectClusterer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEzE,qBAAa,eAAe;WACV,KAAK,CACf,KAAK,EAAE,SAAS,EAAE,EAClB,QAAQ,EAAE,aAAa,EAAE,EACzB,UAAU,EAAE,SAAS,EAAE,EACvB,MAAM,EAAE,uBAAuB,GAChC,IAAI;IAMP,OAAO,CAAC,MAAM,CAAC,eAAe;IA0B9B,OAAO,CAAC,MAAM,CAAC,aAAa;IA0B5B,OAAO,CAAC,MAAM,CAAC,eAAe;IAqC9B,OAAO,CAAC,MAAM,CAAC,WAAW;IAkB1B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAYlC,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B,OAAO,CAAC,MAAM,CAAC,QAAQ;CAQ1B"}
1
+ {"version":3,"file":"EffectClusterer.d.ts","sourceRoot":"","sources":["../../src/physics/EffectClusterer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEzE,qBAAa,eAAe;WACV,KAAK,CACf,KAAK,EAAE,SAAS,EAAE,EAClB,QAAQ,EAAE,aAAa,EAAE,EACzB,UAAU,EAAE,SAAS,EAAE,EACvB,MAAM,EAAE,uBAAuB,GAChC,IAAI;IAMP,OAAO,CAAC,MAAM,CAAC,eAAe;IA0B9B,OAAO,CAAC,MAAM,CAAC,aAAa;IA2B5B,OAAO,CAAC,MAAM,CAAC,eAAe;IAqC9B,OAAO,CAAC,MAAM,CAAC,WAAW;IAkB1B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAYlC,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B,OAAO,CAAC,MAAM,CAAC,QAAQ;CAQ1B"}
@@ -18,6 +18,6 @@ export declare class PhysicsEngine {
18
18
  value: number;
19
19
  }, score: {
20
20
  value: number;
21
- }, width: number, height: number, onKill?: () => void): void;
21
+ }, width: number, height: number, onKill?: () => void, smasherEnemy?: EnemyEntity | null, smasherRelease?: EnemyEntity | null, onSmasherArmBreak?: () => void): void;
22
22
  }
23
23
  //# sourceMappingURL=PhysicsEngine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PhysicsEngine.d.ts","sourceRoot":"","sources":["../../src/physics/PhysicsEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAER,SAAS,EACT,aAAa,EACb,SAAS,EACT,YAAY,EACZ,QAAQ,EACX,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAW9D,qBAAa,aAAa;IASlB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa;IATlC,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,UAAU,CAAoE;gBAGlF,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,WAAW,EACA,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,iBAAiB;IAO9C,MAAM,CACT,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,WAAW,EAAE,EACtB,KAAK,EAAE,SAAS,EAAE,EAClB,QAAQ,EAAE,aAAa,EAAE,EACzB,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,QAAQ,EAAE,EACrB,aAAa,EAAE,YAAY,EAAE,EAC7B,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EACxB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,IAAI,GACpB,IAAI;CAmKV"}
1
+ {"version":3,"file":"PhysicsEngine.d.ts","sourceRoot":"","sources":["../../src/physics/PhysicsEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAER,SAAS,EACT,aAAa,EACb,SAAS,EACT,YAAY,EACZ,QAAQ,EACX,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAY9D,qBAAa,aAAa;IASlB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa;IATlC,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,UAAU,CAAoE;gBAGlF,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,WAAW,EACA,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,iBAAiB;IAO9C,MAAM,CACT,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,WAAW,EAAE,EACtB,KAAK,EAAE,SAAS,EAAE,EAClB,QAAQ,EAAE,aAAa,EAAE,EACzB,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,QAAQ,EAAE,EACrB,aAAa,EAAE,YAAY,EAAE,EAC7B,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EACxB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,IAAI,EACnB,YAAY,GAAE,WAAW,GAAG,IAAW,EACvC,cAAc,GAAE,WAAW,GAAG,IAAW,EACzC,iBAAiB,GAAE,MAAM,IAAe,GACzC,IAAI;CAyLV"}
@@ -8,6 +8,12 @@ export declare class CoreCollisionHandler {
8
8
  static update(core: CoreEntity, enemies: EnemyEntity[], shockwaves: Shockwave[], particles: Particle[], floatingTexts: FloatingText[], juice: JuiceEffects, eventBus: EventBus, score: {
9
9
  value: number;
10
10
  }, width: number, height: number, config: GameConfigData): void;
11
+ static damageCore(core: CoreEntity, enemies: EnemyEntity[], shockwaves: Shockwave[], particles: Particle[], floatingTexts: FloatingText[], juice: JuiceEffects, eventBus: EventBus, score: {
12
+ value: number;
13
+ }, width: number, height: number, direction: {
14
+ x: number;
15
+ y: number;
16
+ }): void;
11
17
  private static tryAutoDeflectFragment;
12
18
  }
13
19
  //# sourceMappingURL=CoreCollisionHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CoreCollisionHandler.d.ts","sourceRoot":"","sources":["../../../src/physics/handlers/CoreCollisionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAG9D,qBAAa,oBAAoB;WACf,MAAM,CAChB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,WAAW,EAAE,EACtB,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,QAAQ,EAAE,EACrB,aAAa,EAAE,YAAY,EAAE,EAC7B,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,GACvB,IAAI;IA6EP,OAAO,CAAC,MAAM,CAAC,sBAAsB;CAyExC"}
1
+ {"version":3,"file":"CoreCollisionHandler.d.ts","sourceRoot":"","sources":["../../../src/physics/handlers/CoreCollisionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAG9D,qBAAa,oBAAoB;WACf,MAAM,CAChB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,WAAW,EAAE,EACtB,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,QAAQ,EAAE,EACrB,aAAa,EAAE,YAAY,EAAE,EAC7B,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,GACvB,IAAI;WAgCO,UAAU,CACpB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,WAAW,EAAE,EACtB,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,QAAQ,EAAE,EACrB,aAAa,EAAE,YAAY,EAAE,EAC7B,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,SAAS,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GACpC,IAAI;IA0DP,OAAO,CAAC,MAAM,CAAC,sBAAsB;CAyExC"}
@@ -0,0 +1,9 @@
1
+ import type { CoreEntity } from "../../entities/CoreEntity";
2
+ import type { EnemyEntity } from "../../entities/EnemyEntity";
3
+ import type { EnemyEffectContext } from "../../content/EnemyBehavior";
4
+ export declare class SmasherCollisionHandler {
5
+ static update(grabbedEnemy: EnemyEntity | null, releasedEnemy: EnemyEntity | null, enemies: EnemyEntity[], core: CoreEntity, context: EnemyEffectContext, onArmBreak: () => void): void;
6
+ private static crush;
7
+ private static pushImpactFeedback;
8
+ }
9
+ //# sourceMappingURL=SmasherCollisionHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SmasherCollisionHandler.d.ts","sourceRoot":"","sources":["../../../src/physics/handlers/SmasherCollisionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEtE,qBAAa,uBAAuB;WAClB,MAAM,CAChB,YAAY,EAAE,WAAW,GAAG,IAAI,EAChC,aAAa,EAAE,WAAW,GAAG,IAAI,EACjC,OAAO,EAAE,WAAW,EAAE,EACtB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,MAAM,IAAI,GACvB,IAAI;IAiDP,OAAO,CAAC,MAAM,CAAC,KAAK;IAKpB,OAAO,CAAC,MAAM,CAAC,kBAAkB;CAkCpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ThrownCollisionHandler.d.ts","sourceRoot":"","sources":["../../../src/physics/handlers/ThrownCollisionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EACR,SAAS,EACT,aAAa,EACb,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,QAAQ,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAK9D,qBAAa,sBAAsB;WACjB,MAAM,CAChB,OAAO,EAAE,WAAW,EAAE,EACtB,KAAK,EAAE,SAAS,EAAE,EAClB,QAAQ,EAAE,aAAa,EAAE,EACzB,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,QAAQ,EAAE,EACrB,aAAa,EAAE,YAAY,EAAE,EAC7B,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAA;KAAE,EAC1D,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC,EACrC,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,cAAc,EACtB,MAAM,CAAC,EAAE,MAAM,IAAI,GACpB,IAAI;CA8MV"}
1
+ {"version":3,"file":"ThrownCollisionHandler.d.ts","sourceRoot":"","sources":["../../../src/physics/handlers/ThrownCollisionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EACR,SAAS,EACT,aAAa,EACb,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,QAAQ,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAK9D,qBAAa,sBAAsB;WACjB,MAAM,CAChB,OAAO,EAAE,WAAW,EAAE,EACtB,KAAK,EAAE,SAAS,EAAE,EAClB,QAAQ,EAAE,aAAa,EAAE,EACzB,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,QAAQ,EAAE,EACrB,aAAa,EAAE,YAAY,EAAE,EAC7B,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAA;KAAE,EAC1D,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC,EACrC,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,cAAc,EACtB,MAAM,CAAC,EAAE,MAAM,IAAI,GACpB,IAAI;CAkOV"}
@@ -1 +1 @@
1
- {"version":3,"file":"VortexPhysicsHandler.d.ts","sourceRoot":"","sources":["../../../src/physics/handlers/VortexPhysicsHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9D,qBAAa,oBAAoB;WACf,MAAM,CAChB,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,EAAE,WAAW,EAAE,EACtB,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,cAAc,GACvB,IAAI;CA8DV"}
1
+ {"version":3,"file":"VortexPhysicsHandler.d.ts","sourceRoot":"","sources":["../../../src/physics/handlers/VortexPhysicsHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9D,qBAAa,oBAAoB;WACf,MAAM,CAChB,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,EAAE,WAAW,EAAE,EACtB,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,cAAc,GACvB,IAAI;CAgEV"}
@@ -10,7 +10,7 @@ export declare class PowerUpRegistry {
10
10
  constructor(configManager: GameConfigManager);
11
11
  private getDefinitions;
12
12
  getAll(): PowerUpDefinition[];
13
- getRandomOptions(count?: number, unlockState?: UnlockState, availableEnemyIds?: ReadonlySet<EnemyType>): PowerUpDefinition[];
13
+ getRandomOptions(count?: number, unlockState?: UnlockState, availableEnemyIds?: ReadonlySet<EnemyType>, coreId?: string): PowerUpDefinition[];
14
14
  registerPowerUp(def: PowerUpDefinition): void;
15
15
  }
16
16
  //# sourceMappingURL=PowerUpRegistry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PowerUpRegistry.d.ts","sourceRoot":"","sources":["../../src/powerups/PowerUpRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,qBAAa,eAAe;IAuXL,OAAO,CAAC,QAAQ,CAAC,aAAa;IAtXjD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyD;IAClF,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAkX9B;gBAEkC,aAAa,EAAE,iBAAiB;IAEpE,OAAO,CAAC,cAAc;IAQf,MAAM,IAAI,iBAAiB,EAAE;IAI7B,gBAAgB,CACnB,KAAK,GAAE,MAAU,EACjB,WAAW,CAAC,EAAE,WAAW,EACzB,iBAAiB,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,GAC3C,iBAAiB,EAAE;IA+Bf,eAAe,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI;CAIvD"}
1
+ {"version":3,"file":"PowerUpRegistry.d.ts","sourceRoot":"","sources":["../../src/powerups/PowerUpRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,qBAAa,eAAe;IAuXL,OAAO,CAAC,QAAQ,CAAC,aAAa;IAtXjD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyD;IAClF,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAkX9B;gBAEkC,aAAa,EAAE,iBAAiB;IAEpE,OAAO,CAAC,cAAc;IAQf,MAAM,IAAI,iBAAiB,EAAE;IAI7B,gBAAgB,CACnB,KAAK,GAAE,MAAU,EACjB,WAAW,CAAC,EAAE,WAAW,EACzB,iBAAiB,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,EAC1C,MAAM,CAAC,EAAE,MAAM,GAChB,iBAAiB,EAAE;IAgCf,eAAe,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI;CAIvD"}
@@ -13,6 +13,7 @@ export interface PowerUpDefinition {
13
13
  rarity: PowerUpRarity;
14
14
  rarityWeight: number;
15
15
  color: string;
16
+ readonly coreIds?: readonly string[];
16
17
  requiredUnlockId?: string;
17
18
  requiredEnemyId?: EnemyType;
18
19
  apply: (core?: CoreEntity) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"PowerUpTypes.d.ts","sourceRoot":"","sources":["../../src/powerups/PowerUpTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,CAAC;AAErE,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAErF,MAAM,WAAW,iBAAiB;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,YAAY,CAAC;IAC7B,OAAO,EAAE,MAAM,YAAY,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,eAAe,CAAC;IAC1B,MAAM,EAAE,aAAa,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IACnC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,cAAc,CAAA;KAAE,KAAK,OAAO,CAAC;CAClE;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAKvD,CAAC"}
1
+ {"version":3,"file":"PowerUpTypes.d.ts","sourceRoot":"","sources":["../../src/powerups/PowerUpTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,CAAC;AAErE,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAErF,MAAM,WAAW,iBAAiB;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,YAAY,CAAC;IAC7B,OAAO,EAAE,MAAM,YAAY,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,eAAe,CAAC;IAC1B,MAAM,EAAE,aAAa,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IACnC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,cAAc,CAAA;KAAE,KAAK,OAAO,CAAC;CAClE;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAKvD,CAAC"}
@@ -0,0 +1,53 @@
1
+ import type { Translations } from "../i18n/locales";
2
+ export type CoreWisdomKind = "passive" | "active" | "buff";
3
+ export type CoreSkillEventId = "kill" | "combo" | "area" | "boss";
4
+ export type CoreMechanic = "launcher" | "repellent" | "smasher";
5
+ export type CoreWisdomEffectId = "core-life-ring";
6
+ export type CoreAccent = "core" | "toxic" | "gravity" | "shield" | "cluster" | "piercer";
7
+ export interface CoreWisdomDefinition {
8
+ readonly id: string;
9
+ readonly requiredSkillPoints: number;
10
+ readonly titleKey: keyof Translations;
11
+ readonly descriptionKey: keyof Translations;
12
+ readonly kind: CoreWisdomKind;
13
+ readonly effectId?: CoreWisdomEffectId;
14
+ }
15
+ export interface CoreDefinition {
16
+ readonly id: string;
17
+ readonly titleKey: keyof Translations;
18
+ readonly descriptionKey: keyof Translations;
19
+ readonly styleDescriptionKey: keyof Translations;
20
+ readonly mechanic: CoreMechanic;
21
+ readonly accent: CoreAccent;
22
+ readonly iconId: "core-nucleus";
23
+ readonly unlockCost: number;
24
+ readonly initiallyUnlocked?: boolean;
25
+ readonly skillPointRewards: Readonly<Record<CoreSkillEventId, number>>;
26
+ readonly wisdomTrack: readonly CoreWisdomDefinition[];
27
+ }
28
+ export interface CoreProfile {
29
+ readonly skillPoints: number;
30
+ readonly wisdomLevel: number;
31
+ }
32
+ export interface CoreRosterSaveData {
33
+ readonly version: number;
34
+ readonly selectedCoreId: string;
35
+ readonly unlockedCoreIds: readonly string[];
36
+ readonly profiles: Readonly<Record<string, CoreProfile>>;
37
+ }
38
+ export type CoreRosterState = "selected" | "unlocked" | "purchasable" | "too-expensive";
39
+ export interface CoreSnapshot extends CoreDefinition {
40
+ readonly state: CoreRosterState;
41
+ readonly profile: CoreProfile;
42
+ readonly nextWisdom?: CoreWisdomDefinition;
43
+ }
44
+ export interface CoreRunSummary {
45
+ readonly coreId: string;
46
+ readonly runLevel: number;
47
+ readonly skillPointsGained: number;
48
+ readonly skillPointsTotal: number;
49
+ readonly wisdomBefore: number;
50
+ readonly wisdomAfter: number;
51
+ readonly newWisdom: readonly CoreWisdomDefinition[];
52
+ }
53
+ //# sourceMappingURL=CoreProgressionTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoreProgressionTypes.d.ts","sourceRoot":"","sources":["../../src/progression/CoreProgressionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE3D,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAElE,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;AAEhE,MAAM,MAAM,kBAAkB,GAAG,gBAAgB,CAAC;AAElD,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAEzF,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,MAAM,YAAY,CAAC;IACtC,QAAQ,CAAC,cAAc,EAAE,MAAM,YAAY,CAAC;IAC5C,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC1C;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,YAAY,CAAC;IACtC,QAAQ,CAAC,cAAc,EAAE,MAAM,YAAY,CAAC;IAC5C,QAAQ,CAAC,mBAAmB,EAAE,MAAM,YAAY,CAAC;IACjD,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;IACvE,QAAQ,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACzD;AAED,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;CAC5D;AAED,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,UAAU,GAAG,aAAa,GAAG,eAAe,CAAC;AAExF,MAAM,WAAW,YAAa,SAAQ,cAAc;IAChD,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,oBAAoB,CAAC;CAC9C;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACvD"}
@@ -0,0 +1,40 @@
1
+ import type { GeneticMemory, GeneticMemoryStorage } from "./GeneticMemory";
2
+ import type { CoreDefinition, CoreRunSummary, CoreSkillEventId, CoreSnapshot, CoreRosterState } from "./CoreProgressionTypes";
3
+ export interface CoreEcosomaWallet {
4
+ getBalance(): number;
5
+ spendEcosoma(amount: number): boolean;
6
+ }
7
+ export declare class CoreRoster {
8
+ private readonly definitions;
9
+ private readonly storage;
10
+ private readonly wallet;
11
+ private readonly listeners;
12
+ private readonly unlockedCoreIds;
13
+ private readonly profiles;
14
+ private selectedCoreId;
15
+ private runSkillPoints;
16
+ private runCoreId;
17
+ constructor(definitions: readonly CoreDefinition[], wallet: GeneticMemory | CoreEcosomaWallet, storage?: GeneticMemoryStorage | null);
18
+ getSelectedCoreId(): string;
19
+ getSelectedCore(): CoreSnapshot;
20
+ getSnapshots(): CoreSnapshot[];
21
+ getSnapshot(id: string): CoreSnapshot;
22
+ getState(id: string): CoreRosterState;
23
+ selectCore(id: string): boolean;
24
+ purchaseCore(id: string): boolean;
25
+ startRun(): void;
26
+ recordSkillEvent(eventId: CoreSkillEventId, count?: number): void;
27
+ finishRun(runLevel: number): CoreRunSummary | null;
28
+ getActiveWisdomEffectIds(coreId?: string): string[];
29
+ subscribe(listener: () => void): () => void;
30
+ private getFirstUnlockedCoreId;
31
+ private resolveSelectedCoreId;
32
+ private getFirstDefinitionId;
33
+ private getWisdomLevel;
34
+ private requireDefinition;
35
+ private persist;
36
+ private notify;
37
+ private hydrateProfiles;
38
+ private ensureSelectedCoreIsUnlocked;
39
+ }
40
+ //# sourceMappingURL=CoreRoster.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoreRoster.d.ts","sourceRoot":"","sources":["../../src/progression/CoreRoster.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EACR,cAAc,EAEd,cAAc,EACd,gBAAgB,EAChB,YAAY,EAEZ,eAAe,EAClB,MAAM,wBAAwB,CAAC;AAUhC,MAAM,WAAW,iBAAiB;IAC9B,UAAU,IAAI,MAAM,CAAC;IACrB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;CACzC;AAED,qBAAa,UAAU;IACnB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;IAC1D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IACtD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IACnD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqB;IACrD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkC;IAC3D,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,SAAS,CAAuB;gBAGpC,WAAW,EAAE,SAAS,cAAc,EAAE,EACtC,MAAM,EAAE,aAAa,GAAG,iBAAiB,EACzC,OAAO,GAAE,oBAAoB,GAAG,IAA0B;IAYvD,iBAAiB,IAAI,MAAM;IAI3B,eAAe,IAAI,YAAY;IAI/B,YAAY,IAAI,YAAY,EAAE;IAI9B,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY;IAarC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe;IAOrC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAU/B,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAajC,QAAQ,IAAI,IAAI;IAKhB,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,EAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAOpE,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI;IA4BlD,wBAAwB,CAAC,MAAM,GAAE,MAA4B,GAAG,MAAM,EAAE;IAOxE,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAKlD,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,OAAO;IASf,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,4BAA4B;CAKvC"}
@@ -0,0 +1,9 @@
1
+ import type { GeneticMemoryStorage } from "./GeneticMemory";
2
+ import type { CoreRosterSaveData } from "./CoreProgressionTypes";
3
+ export declare const CORE_ROSTER_STORAGE_KEY = "axon_surge_core_roster";
4
+ export declare const CURRENT_CORE_ROSTER_SAVE_VERSION = 2;
5
+ export declare function readCoreRosterData(storage: GeneticMemoryStorage | null, firstDefinitionId: string): CoreRosterSaveData;
6
+ export declare function persistCoreRosterData(storage: GeneticMemoryStorage | null, data: CoreRosterSaveData): void;
7
+ export declare function getBrowserStorage(): GeneticMemoryStorage | null;
8
+ export declare function normalizeCoreInteger(value: unknown): number;
9
+ //# sourceMappingURL=CoreRosterStorage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoreRosterStorage.d.ts","sourceRoot":"","sources":["../../src/progression/CoreRosterStorage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,KAAK,EAAe,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE9E,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAChE,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAElD,wBAAgB,kBAAkB,CAC9B,OAAO,EAAE,oBAAoB,GAAG,IAAI,EACpC,iBAAiB,EAAE,MAAM,GAC1B,kBAAkB,CAiBpB;AAED,wBAAgB,qBAAqB,CACjC,OAAO,EAAE,oBAAoB,GAAG,IAAI,EACpC,IAAI,EAAE,kBAAkB,GACzB,IAAI,CAKN;AAED,wBAAgB,iBAAiB,IAAI,oBAAoB,GAAG,IAAI,CAM/D;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAE3D"}
@@ -0,0 +1,3 @@
1
+ import type { CoreDefinition } from "./CoreProgressionTypes";
2
+ export declare function createCoreDefinitions(definitions: readonly CoreDefinition[]): Map<string, CoreDefinition>;
3
+ //# sourceMappingURL=CoreRosterValidation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoreRosterValidation.d.ts","sourceRoot":"","sources":["../../src/progression/CoreRosterValidation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,wBAAgB,qBAAqB,CACjC,WAAW,EAAE,SAAS,cAAc,EAAE,GACvC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAQ7B"}
@@ -0,0 +1,4 @@
1
+ import type { GameConfigManager } from "../config/GameConfig";
2
+ import type { CoreRoster } from "./CoreRoster";
3
+ export declare function applyCoreWisdomPassives(roster: CoreRoster, configManager: GameConfigManager): void;
4
+ //# sourceMappingURL=CoreWisdomPassives.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoreWisdomPassives.d.ts","sourceRoot":"","sources":["../../src/progression/CoreWisdomPassives.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAS/C,wBAAgB,uBAAuB,CACnC,MAAM,EAAE,UAAU,EAClB,aAAa,EAAE,iBAAiB,GACjC,IAAI,CAIN"}
@@ -0,0 +1,3 @@
1
+ import type { CoreDefinition } from "./CoreProgressionTypes";
2
+ export declare const DEFAULT_CORE_DEFINITIONS: readonly CoreDefinition[];
3
+ //# sourceMappingURL=DefaultCoreRoster.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultCoreRoster.d.ts","sourceRoot":"","sources":["../../src/progression/DefaultCoreRoster.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,eAAO,MAAM,wBAAwB,EAAE,SAAS,cAAc,EAsC7D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultGeneticMemory.d.ts","sourceRoot":"","sources":["../../src/progression/DefaultGeneticMemory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEtE,eAAO,MAAM,4BAA4B,EAAE,SAAS,2BAA2B,EAgL9E,CAAC"}
1
+ {"version":3,"file":"DefaultGeneticMemory.d.ts","sourceRoot":"","sources":["../../src/progression/DefaultGeneticMemory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEtE,eAAO,MAAM,4BAA4B,EAAE,SAAS,2BAA2B,EAkK9E,CAAC"}
@@ -16,6 +16,7 @@ export declare class GeneticMemory implements UnlockState {
16
16
  constructor(definitions: readonly GeneticMemoryNodeDefinition[], storage?: GeneticMemoryStorage | null);
17
17
  getBalance(): number;
18
18
  collectEcosoma(amount?: number): void;
19
+ spendEcosoma(amount: number): boolean;
19
20
  isUnlocked(unlockId: string): boolean;
20
21
  getLastAcquiredNodeId(): string | undefined;
21
22
  getNode(id: string): GeneticMemoryNodeDefinition | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"GeneticMemory.d.ts","sourceRoot":"","sources":["../../src/progression/GeneticMemory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,2BAA2B,EAC3B,sBAAsB,EACtB,gBAAgB,EAEhB,WAAW,EACd,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,yBAA0B,SAAQ,2BAA2B;IAC1E,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;CACpC;AAED,MAAM,WAAW,oBAAoB;IACjC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7C;AAKD,qBAAa,aAAc,YAAW,WAAW;IAC7C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA2C;IACvE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IACnD,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,kBAAkB,CAAuB;gBAG7C,WAAW,EAAE,SAAS,2BAA2B,EAAE,EACnD,OAAO,GAAE,oBAAoB,GAAG,IAAwC;IAQrE,UAAU,IAAI,MAAM;IAIpB,cAAc,CAAC,MAAM,GAAE,MAAU,GAAG,IAAI;IASxC,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIrC,qBAAqB,IAAI,MAAM,GAAG,SAAS;IAQ3C,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,2BAA2B,GAAG,SAAS;IAI5D,yBAAyB,IAAI,sBAAsB,EAAE;IASrD,QAAQ,IAAI,yBAAyB,EAAE;IAOvC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB;IAW1C,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAa7B,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAKlD,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,IAAI;IAkBZ,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAgBhC,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAepC,OAAO,CAAC,MAAM,CAAC,SAAS;IAIxB,OAAO,CAAC,MAAM,CAAC,eAAe;IAa9B,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B,OAAO,CAAC,MAAM,CAAC,WAAW;IAO1B,OAAO,CAAC,MAAM,CAAC,eAAe;IAO9B,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAMrC,OAAO,CAAC,OAAO;IAcf,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,MAAM,CAAC,iBAAiB;CAOnC"}
1
+ {"version":3,"file":"GeneticMemory.d.ts","sourceRoot":"","sources":["../../src/progression/GeneticMemory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,2BAA2B,EAC3B,sBAAsB,EACtB,gBAAgB,EAEhB,WAAW,EACd,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,yBAA0B,SAAQ,2BAA2B;IAC1E,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;CACpC;AAED,MAAM,WAAW,oBAAoB;IACjC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7C;AAKD,qBAAa,aAAc,YAAW,WAAW;IAC7C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA2C;IACvE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IACnD,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,kBAAkB,CAAuB;gBAG7C,WAAW,EAAE,SAAS,2BAA2B,EAAE,EACnD,OAAO,GAAE,oBAAoB,GAAG,IAAwC;IAQrE,UAAU,IAAI,MAAM;IAIpB,cAAc,CAAC,MAAM,GAAE,MAAU,GAAG,IAAI;IASxC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAUrC,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIrC,qBAAqB,IAAI,MAAM,GAAG,SAAS;IAQ3C,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,2BAA2B,GAAG,SAAS;IAI5D,yBAAyB,IAAI,sBAAsB,EAAE;IASrD,QAAQ,IAAI,yBAAyB,EAAE;IAOvC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB;IAW1C,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAa7B,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAKlD,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,IAAI;IAkBZ,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAgBhC,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAepC,OAAO,CAAC,MAAM,CAAC,SAAS;IAIxB,OAAO,CAAC,MAAM,CAAC,eAAe;IAa9B,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B,OAAO,CAAC,MAAM,CAAC,WAAW;IAO1B,OAAO,CAAC,MAAM,CAAC,eAAe;IAO9B,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAMrC,OAAO,CAAC,OAAO;IAcf,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,MAAM,CAAC,iBAAiB;CAOnC"}
@@ -5,6 +5,7 @@ import type { EcosomaOrb } from "../entities/EcosomaOrb";
5
5
  import type { ToxicPool, GravityVortex, Shockwave, FloatingText, Particle, Vector2D } from "../types/game";
6
6
  import type { OrbitingModifierOrb } from "../powerups/OrbitingModifierOrb";
7
7
  import type { BossCatalystOrb } from "../entities/BossCatalystOrb";
8
+ import type { RepelWaveProjectile } from "../entities/RepelWaveProjectile";
8
9
  import type { BossEncounterSnapshot } from "../bosses/BossEncounter";
9
10
  import type { JuiceEffects } from "./JuiceEffects";
10
11
  import type { ThemeManager } from "../theme/ThemeManager";
@@ -30,8 +31,10 @@ export declare class CanvasRenderer {
30
31
  private tutorialArrowRenderer;
31
32
  private enemyShapeRenderer;
32
33
  private coreDeathEffectRenderer;
34
+ private smasherRenderer;
33
35
  constructor(canvas: HTMLCanvasElement, themeManager: ThemeManager, configManager: GameConfigManager);
34
- render(core: CoreEntity, enemies: EnemyEntity[], experienceOrbs: ExperienceOrb[], ecosomaOrbs: EcosomaOrb[], pools: ToxicPool[], vortices: GravityVortex[], shockwaves: Shockwave[], particles: Particle[], floatingTexts: FloatingText[], juice: JuiceEffects, grabbedEnemy: EnemyEntity | null, mousePos: Vector2D, level?: number, experienceProgress?: number, levelUpPulse?: number, levelUpActive?: boolean, tutorial?: InteractiveTutorial, deathSequenceProgress?: number, areaVisual?: AreaVisualState, boss?: BossEncounterSnapshot | null, bossCatalyst?: BossCatalystOrb | null): void;
36
+ renderCorePortrait(targetCanvas: HTMLCanvasElement, core: CoreEntity, timeSeconds?: number, _experienceProgress?: number, silhouette?: boolean): void;
37
+ render(core: CoreEntity, enemies: EnemyEntity[], experienceOrbs: ExperienceOrb[], ecosomaOrbs: EcosomaOrb[], pools: ToxicPool[], vortices: GravityVortex[], shockwaves: Shockwave[], repelProjectiles: RepelWaveProjectile[], particles: Particle[], floatingTexts: FloatingText[], juice: JuiceEffects, grabbedEnemy: EnemyEntity | null, mousePos: Vector2D, level?: number, experienceProgress?: number, levelUpPulse?: number, levelUpActive?: boolean, tutorial?: InteractiveTutorial, deathSequenceProgress?: number, areaVisual?: AreaVisualState, boss?: BossEncounterSnapshot | null, bossCatalyst?: BossCatalystOrb | null): void;
35
38
  private drawLevelUpDimmer;
36
39
  private drawAreaVisual;
37
40
  private drawAreaIntro;
@@ -45,6 +48,7 @@ export declare class CanvasRenderer {
45
48
  private drawEcosomaTendril;
46
49
  private drawToxicPools;
47
50
  private drawShockwaves;
51
+ private drawRepelWaveProjectiles;
48
52
  private drawGravityVortices;
49
53
  private drawFluidCosmosBackground;
50
54
  private drawCoreFilaments;
@@ -54,6 +58,8 @@ export declare class CanvasRenderer {
54
58
  private drawHoverTendril;
55
59
  private drawOrganicEnemies;
56
60
  private drawParticles;
61
+ private drawMiasmaClouds;
62
+ private drawMiasmaCloudBlob;
57
63
  private drawFloatingTexts;
58
64
  drawOrbitingModifierOrbs(orbs: OrbitingModifierOrb[], time: number, i18nService?: I18nService, canReroll?: boolean, rerollsRemaining?: number): void;
59
65
  private getDisplayScale;
@@ -1 +1 @@
1
- {"version":3,"file":"CanvasRenderer.d.ts","sourceRoot":"","sources":["../../src/render/CanvasRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CanvasRenderer.d.ts","sourceRoot":"","sources":["../../src/render/CanvasRenderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { EnemyEntity } from "../entities/EnemyEntity";
2
+ import type { ThemePalette } from "../theme/ThemeManager";
3
+ export type EnemyRenderStyle = "filled" | "outline";
4
+ export interface EnemyRenderContext {
5
+ readonly ctx: CanvasRenderingContext2D;
6
+ readonly enemy: EnemyEntity;
7
+ readonly time: number;
8
+ readonly palette: ThemePalette;
9
+ readonly color: string;
10
+ readonly style: EnemyRenderStyle;
11
+ }
12
+ export interface EnemyRenderer {
13
+ render(context: EnemyRenderContext): void;
14
+ }
15
+ export declare abstract class FilledEnemyRenderer implements EnemyRenderer {
16
+ render(context: EnemyRenderContext): void;
17
+ protected isOutline(context: EnemyRenderContext): boolean;
18
+ protected abstract drawShape(context: EnemyRenderContext): void;
19
+ }
20
+ //# sourceMappingURL=EnemyRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnemyRenderer.d.ts","sourceRoot":"","sources":["../../src/render/EnemyRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEpD,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,GAAG,EAAE,wBAAwB,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;CACpC;AAED,MAAM,WAAW,aAAa;IAC1B,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAAC;CAC7C;AAED,8BAAsB,mBAAoB,YAAW,aAAa;IACvD,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAmBhD,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO;IAIzD,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;CAClE"}
@@ -0,0 +1,11 @@
1
+ import type { GameConfigManager } from "../config/GameConfig";
2
+ import type { EnemyRenderer, EnemyRenderStyle } from "./EnemyRenderer";
3
+ export declare class EnemyRendererRegistry {
4
+ private readonly renderers;
5
+ private readonly variantStyles;
6
+ constructor(configManager: GameConfigManager);
7
+ register(rendererId: string, renderer: EnemyRenderer): void;
8
+ resolve(rendererId: string): EnemyRenderer;
9
+ resolveVariantStyle(rendererId: string | null): EnemyRenderStyle;
10
+ }
11
+ //# sourceMappingURL=EnemyRendererRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnemyRendererRegistry.d.ts","sourceRoot":"","sources":["../../src/render/EnemyRendererRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAO9D,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEvE,qBAAa,qBAAqB;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAC9D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAE3B;gBAEgB,aAAa,EAAE,iBAAiB;IAS5C,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,IAAI;IAI3D,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa;IAI1C,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,gBAAgB;CAG1E"}
@@ -2,15 +2,8 @@ import type { EnemyEntity } from "../entities/EnemyEntity";
2
2
  import type { GameConfigManager } from "../config/GameConfig";
3
3
  import type { ThemePalette } from "../theme/ThemeManager";
4
4
  export declare class EnemyShapeRenderer {
5
- private readonly configManager;
5
+ private readonly rendererRegistry;
6
6
  constructor(configManager: GameConfigManager);
7
7
  draw(ctx: CanvasRenderingContext2D, enemy: EnemyEntity, time: number, palette: ThemePalette, color: string): void;
8
- private readonly renderers;
9
- private drawCircle;
10
- private drawPiercer;
11
- private drawSpore;
12
- private drawCluster;
13
- private drawParasite;
14
- private drawHeavy;
15
8
  }
16
9
  //# sourceMappingURL=EnemyShapeRenderer.d.ts.map