feat: add prestige system and skill upgrades with comprehensive documentation
Build and Publish Mana Loop Docker Image / build-and-publish (push) Failing after 5m57s

This commit is contained in:
Refactoring Agent
2026-05-01 15:18:09 +02:00
parent 3691aa4acc
commit 03815f27ee
52 changed files with 4056 additions and 873 deletions
@@ -1,6 +1,9 @@
// ─── Mana Enchantment Effects ────────────────────────────────────────────────
// All mana-related enchantment effects that can be applied to equipment
// Import ELEMENTS to get the list of elements for per-element capacity effects
import { ELEMENTS } from '../../constants';
import type { EquipmentCategory } from '../equipment'
import type { EnchantmentEffectDef } from '../enchantment-types'
@@ -149,4 +152,50 @@ export const MANA_EFFECTS: Record<string, EnchantmentEffectDef> = {
allowedEquipmentCategories: WEAPON_EQUIPMENT,
effect: { type: 'bonus', stat: 'weaponManaRegen', value: 5 }
},
// ═══════════════════════════════════════════════════════════════════════════
// PER-ELEMENT CAPACITY EFFECTS - Boosts capacity for specific mana types
// ═══════════════════════════════════════════════════════════════════════════
// Helper to create per-element capacity effects for a given element
// Creates 3 tiers: +10 (5 stacks), +25 (3 stacks), +50 (2 stacks)
...Object.fromEntries(
Object.entries(ELEMENTS)
.filter(([, def]) => def.cat !== 'utility') // Skip utility elements like transference
.flatMap(([elemId, elemDef]) => {
const capName = elemId.charAt(0).toUpperCase() + elemId.slice(1);
return [
[`${elemId}_cap_10`, {
id: `${elemId}_cap_10`,
name: `${capName} Reservoir`,
description: `+10 ${elemDef.name} mana capacity`,
category: 'mana',
baseCapacityCost: 30,
maxStacks: 5,
allowedEquipmentCategories: MANA_EQUIPMENT,
effect: { type: 'bonus', stat: `elementCap_${elemId}`, value: 10 }
}],
[`${elemId}_cap_25`, {
id: `${elemId}_cap_25`,
name: `${capName} Basin`,
description: `+25 ${elemDef.name} mana capacity`,
category: 'mana',
baseCapacityCost: 60,
maxStacks: 3,
allowedEquipmentCategories: MANA_EQUIPMENT,
effect: { type: 'bonus', stat: `elementCap_${elemId}`, value: 25 }
}],
[`${elemId}_cap_50`, {
id: `${elemId}_cap_50`,
name: `${capName} Wellspring`,
description: `+50 ${elemDef.name} mana capacity`,
category: 'mana',
baseCapacityCost: 100,
maxStacks: 2,
allowedEquipmentCategories: MANA_EQUIPMENT,
effect: { type: 'bonus', stat: `elementCap_${elemId}`, value: 50 }
}],
];
})
),
};