feature: add new composite and exotic mana types (ticket #202)
Build and Publish Mana Loop Docker Image / build-and-publish (push) Failing after 17s

This commit is contained in:
2026-05-29 21:51:45 +02:00
parent 7bd28e2085
commit e3ce18c601
31 changed files with 1279 additions and 170 deletions
+10 -7
View File
@@ -13,8 +13,11 @@ import { ELEMENTS } from '../constants/elements';
* resolveUnlockChain('fire') → ['fire']
* resolveUnlockChain('metal') → ['fire', 'earth', 'metal']
* resolveUnlockChain('crystal') → ['earth', 'water', 'light', 'sand', 'crystal']
* resolveUnlockChain('stellar') → ['fire', 'light', 'stellar']
* resolveUnlockChain('stellar') → ['fire', 'air', 'transference', 'lightning', 'light', 'plasma', 'stellar']
* resolveUnlockChain('void') → ['dark', 'death', 'void']
* resolveUnlockChain('soul') → ['light', 'dark', 'transference', 'soul']
* resolveUnlockChain('time') → ['light', 'dark', 'transference', 'earth', 'water', 'sand', 'soul', 'time']
* resolveUnlockChain('plasma') → ['fire', 'air', 'transference', 'lightning', 'plasma']
*/
export function resolveUnlockChain(element: string): string[] {
const result: string[] = [];
@@ -74,12 +77,12 @@ const TIER_CONFIG = [
{ start: 10, end: 80, spacing: 10 }, // Base + utility: floors 10-80
{ start: 90, end: 120, spacing: 10 }, // Composite: floors 90-120
{ start: 130, end: 160, spacing: 10 }, // Composite + Components
{ start: 170, end: 200, spacing: 10 }, // Exotic
{ start: 210, end: 240, spacing: 10 }, // Dual Element
{ start: 250, end: 290, spacing: 10 }, // Dual Composite + Components
{ start: 300, end: 340, spacing: 10 }, // Exotic + Components
{ start: 350, end: 390, spacing: 10 }, // Exotic + Composite + Components
{ start: 400, end: 450, spacing: 10 }, // 1 Exotic + 2 Composite + All Components
{ start: 170, end: 240, spacing: 10 }, // Exotic (8 guardians)
{ start: 250, end: 280, spacing: 10 }, // Dual Element
{ start: 290, end: 330, spacing: 10 }, // Dual Composite + Components
{ start: 340, end: 380, spacing: 10 }, // Exotic + Components
{ start: 390, end: 430, spacing: 10 }, // Exotic + Composite + Components
{ start: 440, end: 490, spacing: 10 }, // 1 Exotic + 2 Composite + All Components
] as const;
/** Get all guardian floors from a given start, dynamically computed. */