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
@@ -0,0 +1,72 @@
// ─── BlackFlame Spells ───────────────────────────────────────────────────────
// BlackFlame magic - Dark + Fire compound, curse/DoT focus
import type { SpellDef } from '../../types';
import { elemCost } from '../elements';
export const BLACKFLAME_SPELLS: Record<string, SpellDef> = {
// Tier 1 - Basic BlackFlame
blackFire: {
name: "Black Fire",
elem: "blackflame",
dmg: 12,
cost: elemCost("blackflame", 2),
tier: 1,
castSpeed: 2.2,
unlock: 200,
studyTime: 3,
desc: "Dark fire that burns with cursed flames. Applies curse DoT.",
effects: [{ type: 'burn', value: 0.15 }, { type: 'curse', value: 0.1 }]
},
shadowEmber: {
name: "Shadow Ember",
elem: "blackflame",
dmg: 20,
cost: elemCost("blackflame", 3),
tier: 1,
castSpeed: 1.8,
unlock: 320,
studyTime: 4,
desc: "Embers of shadow fire. Reduces enemy resistances.",
effects: [{ type: 'curse', value: 0.15 }]
},
// Tier 2 - Advanced BlackFlame
darkInferno: {
name: "Dark Inferno",
elem: "blackflame",
dmg: 38,
cost: elemCost("blackflame", 6),
tier: 2,
castSpeed: 1.3,
unlock: 1000,
studyTime: 9,
desc: "A cursed inferno that weakens and burns.",
effects: [{ type: 'burn', value: 0.25 }, { type: 'curse', value: 0.2 }]
},
umbralBlaze: {
name: "Umbral Blaze",
elem: "blackflame",
dmg: 55,
cost: elemCost("blackflame", 8),
tier: 2,
castSpeed: 1,
unlock: 1500,
studyTime: 12,
desc: "Flames from the abyss. Stacks curse on enemies.",
effects: [{ type: 'curse', value: 0.3 }, { type: 'burn', value: 0.2 }]
},
// Tier 3 - Master BlackFlame
hellfireCurse: {
name: "Hellfire Curse",
elem: "blackflame",
dmg: 140,
cost: elemCost("blackflame", 20),
tier: 3,
castSpeed: 0.5,
unlock: 15000,
studyTime: 30,
desc: "Ultimate cursed flames. Devastating DoT and resistance shred.",
effects: [{ type: 'burn', value: 0.35 }, { type: 'curse', value: 0.35 }]
},
};