refactor: Redesign Invoker disciplines for pact bonuses and guardian boons
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 1m21s
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 1m21s
- Replace generic spell-casting/void-manipulation with pact-focused disciplines - Add Pact Attunement (light): reduces pact signing time, boosts pact affinity - Add Guardian's Boon (dark): amplifies all guardian unique perks - Add pactAffinityBonus and guardianBoonMultiplier stat keys to effect system - Apply pactAffinityBonus in pact signing time calculation (gameStore) - Scale guardian boon values by guardianBoonMultiplier (combat-utils) - Guard Invoker discipline activation behind signedPacts.length > 0 - Add 'Signed guardian pact' prerequisite display in discipline-math
This commit is contained in:
@@ -13,6 +13,7 @@ import { invokerDisciplines } from '@/lib/game/data/disciplines/invoker';
|
||||
import { calculateStatBonus, calculateManaDrain, checkDisciplinePrerequisites } from '@/lib/game/utils/discipline-math';
|
||||
import { ALL_DISCIPLINES } from '@/lib/game/data/disciplines';
|
||||
import { useManaStore } from '@/lib/game/stores/manaStore';
|
||||
import { usePrestigeStore } from '@/lib/game/stores/prestigeStore';
|
||||
import clsx from 'clsx';
|
||||
|
||||
// ─── Attunement Tabs ─────────────────────────────────────────────────────────
|
||||
@@ -216,10 +217,11 @@ export const DisciplinesTab: React.FC = () => {
|
||||
const [activeAttunement, setActiveAttunement] = useState<string>('base');
|
||||
|
||||
const elements = useManaStore((s) => s.elements);
|
||||
const signedPacts = usePrestigeStore((s) => s.signedPacts);
|
||||
|
||||
const handleToggle = useCallback((id: string, paused: boolean) => {
|
||||
if (paused) {
|
||||
activate(id, { elements });
|
||||
activate(id, { elements, signedPacts });
|
||||
} else {
|
||||
deactivate(id);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user