Files
Mana-Loop/src/lib/game/data/disciplines/enchanter-special.ts
T
n8n-gitea 14f25fffda
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 1m19s
feat: add enchanter disciplines to unlock enchantment effects via perk progression
- Add unlocksEffects field to DisciplinePerk type
- Add unlockEffects action to crafting store (deduplicating merge)
- Modify discipline processTick to detect perk thresholds and return unlocked effect IDs
- Wire gameStore tick to pass unlocked effects to crafting store
- Create 8 new enchanter disciplines with tiered effect unlocks:
  Basic/Advanced Weapon, Utility, Mana, Basic/Intermediate/Advanced Spell, Special
- Higher-tier disciplines require prerequisite disciplines
- Add processedPerks tracking to prevent duplicate unlocks
- Split enchanter disciplines into modular files (enchanter, enchanter-utility, enchanter-spells, enchanter-special)
- All tests pass (784/784), no new TS errors, all files under 400 lines
2026-05-23 19:29:45 +02:00

71 lines
2.1 KiB
TypeScript

// ─── Enchanter Special Disciplines ─────────────────────────────────────────────
// Disciplines for unlocking unique and powerful special enchantment effects
import type { DisciplineDefinition } from '../../types/disciplines';
export const enchanterSpecialDisciplines: DisciplineDefinition[] = [
{
id: 'study-special-enchantments',
name: 'Study Special Enchantments',
attunement: 'enchanter',
manaType: 'death',
baseCost: 22,
description: 'Learn to enchant equipment with unique and powerful effects.',
statBonus: { stat: 'enchantPower', baseValue: 5 },
difficultyFactor: 220,
scalingFactor: 130,
drainBase: 4,
requires: ['study-advanced-weapon-enchantments'],
perks: [
{
id: 'special-spell-echo',
type: 'once',
threshold: 100,
value: 0,
description: 'Unlock Echo Chamber enchantment',
unlocksEffects: ['spell_echo_10'],
},
{
id: 'special-guardian-dmg',
type: 'once',
threshold: 80,
value: 0,
description: 'Unlock Bane enchantment',
unlocksEffects: ['guardian_dmg_10'],
},
{
id: 'special-overpower',
type: 'once',
threshold: 150,
value: 0,
description: 'Unlock Overpower enchantment',
unlocksEffects: ['overpower_80'],
},
{
id: 'special-first-strike',
type: 'once',
threshold: 120,
value: 0,
description: 'Unlock First Strike enchantment',
unlocksEffects: ['first_strike'],
},
{
id: 'special-combo-master',
type: 'once',
threshold: 200,
value: 0,
description: 'Unlock Combo Master enchantment',
unlocksEffects: ['combo_master'],
},
{
id: 'special-adrenaline-rush',
type: 'once',
threshold: 180,
value: 0,
description: 'Unlock Adrenaline Rush enchantment',
unlocksEffects: ['adrenaline_rush'],
},
],
},
];