feat: add prestige system and skill upgrades with comprehensive documentation
Build and Publish Mana Loop Docker Image / build-and-publish (push) Failing after 5m57s
Build and Publish Mana Loop Docker Image / build-and-publish (push) Failing after 5m57s
This commit is contained in:
@@ -0,0 +1,94 @@
|
||||
// ─── Special Effect IDs ────────────────────────────────────────────────────────
|
||||
// These are the IDs used in the 'specialId' field of special effects
|
||||
|
||||
import type { ComputedEffects } from './upgrade-effects.types';
|
||||
|
||||
export const SPECIAL_EFFECTS = {
|
||||
// Mana Flow special effects
|
||||
MANA_CASCADE: 'manaCascade',
|
||||
STEADY_STREAM: 'steadyStream',
|
||||
MANA_TORRENT: 'manaTorrent',
|
||||
FLOW_SURGE: 'flowSurge',
|
||||
MANA_OVERFLOW: 'manaOverflow',
|
||||
MANA_WATERFALL: 'manaWaterfall',
|
||||
ETERNAL_FLOW: 'eternalFlow',
|
||||
|
||||
// Mana Well special effects
|
||||
DESPAIR_WELLS: 'despairWells',
|
||||
DESPERATE_WELLS: 'desperateWells',
|
||||
MANA_ECHO: 'manaEcho',
|
||||
EMERGENCY_RESERVE: 'emergencyReserve',
|
||||
MANA_THRESHOLD: 'manaThreshold',
|
||||
MANA_CONVERSION: 'manaConversion',
|
||||
PANIC_RESERVE: 'panicReserve',
|
||||
MANA_CONDENSE: 'manaCondense',
|
||||
DEEP_RESERVE: 'deepReserve',
|
||||
MANA_TIDE: 'manaTide',
|
||||
VOID_STORAGE: 'voidStorage',
|
||||
MANA_CORE: 'manaCore',
|
||||
MANA_HEART: 'manaHeart',
|
||||
MANA_GENESIS: 'manaGenesis',
|
||||
|
||||
// Mana Overflow special effects
|
||||
CLICK_SURGE: 'clickSurge',
|
||||
MANA_FLOOD: 'manaFlood',
|
||||
|
||||
// Combat special effects
|
||||
FIRST_STRIKE: 'firstStrike',
|
||||
OVERPOWER: 'overpower',
|
||||
BERSERKER: 'berserker',
|
||||
EXECUTIONER: 'executioner',
|
||||
COMBO_MASTER: 'comboMaster',
|
||||
ADRENALINE_RUSH: 'adrenalineRush',
|
||||
|
||||
// Study special effects
|
||||
QUICK_GRASP: 'quickGrasp',
|
||||
DEEP_CONCENTRATION: 'deepConcentration',
|
||||
QUICK_MASTERY: 'quickMastery',
|
||||
PARALLEL_STUDY: 'parallelStudy',
|
||||
STUDY_MOMENTUM: 'studyMomentum',
|
||||
KNOWLEDGE_ECHO: 'knowledgeEcho',
|
||||
KNOWLEDGE_TRANSFER: 'knowledgeTransfer',
|
||||
MENTAL_CLARITY: 'mentalClarity',
|
||||
STUDY_REFUND: 'studyRefund',
|
||||
DEEP_UNDERSTANDING: 'deepUnderstanding',
|
||||
STUDY_RUSH: 'studyRush',
|
||||
CHAIN_STUDY: 'chainStudy',
|
||||
|
||||
// Element special effects
|
||||
ELEMENTAL_AFFINITY: 'elementalAffinity',
|
||||
EXOTIC_MASTERY: 'exoticMastery',
|
||||
ELEMENTAL_RESONANCE: 'elementalResonance',
|
||||
MANA_CONDUIT: 'manaConduit',
|
||||
|
||||
// Enchanting special effects
|
||||
ENCHANT_MASTERY: 'enchantMastery',
|
||||
ENCHANT_PRESERVATION: 'enchantPreservation',
|
||||
THRIFTY_ENCHANTER: 'thriftyEnchanter',
|
||||
OPTIMIZED_ENCHANTING: 'optimizedEnchanting',
|
||||
HASTY_ENCHANTER: 'hastyEnchanter',
|
||||
INSTANT_DESIGNS: 'instantDesigns',
|
||||
PURE_ESSENCE: 'pureEssence',
|
||||
|
||||
// Crafting special effects
|
||||
BATCH_CRAFTING: 'batchCrafting',
|
||||
MASS_PRODUCTION: 'massProduction',
|
||||
SCAVENGE: 'scavenge',
|
||||
RECLAIM: 'reclaim',
|
||||
|
||||
// Golemancy special effects
|
||||
GOLEM_FURY: 'golemFury',
|
||||
GOLEM_RESONANCE: 'golemResonance',
|
||||
RAPID_STRIKES: 'rapidStrikes',
|
||||
BLITZ_ATTACK: 'blitzAttack',
|
||||
|
||||
// Ascension special effects
|
||||
INSIGHT_BOUNTY: 'insightBounty',
|
||||
} as const;
|
||||
|
||||
/**
|
||||
* Check if a special effect is active
|
||||
*/
|
||||
export function hasSpecial(effects: ComputedEffects, specialId: string): boolean {
|
||||
return effects?.specials?.has(specialId) ?? false;
|
||||
}
|
||||
Reference in New Issue
Block a user