diff --git a/docs/project-structure.txt b/docs/project-structure.txt index 2c838be..1c65839 100644 --- a/docs/project-structure.txt +++ b/docs/project-structure.txt @@ -25,6 +25,9 @@ Mana-Loop/ ├── prisma/ │ └── schema.prisma ├── public/ +│ ├── fonts/ +│ │ ├── GeistMonoVF.woff +│ │ └── GeistVF.woff │ ├── logo.svg │ └── robots.txt ├── src/ diff --git a/public/fonts/GeistMonoVF.woff b/public/fonts/GeistMonoVF.woff new file mode 100644 index 0000000..a173017 Binary files /dev/null and b/public/fonts/GeistMonoVF.woff differ diff --git a/public/fonts/GeistVF.woff b/public/fonts/GeistVF.woff new file mode 100644 index 0000000..1604b17 Binary files /dev/null and b/public/fonts/GeistVF.woff differ diff --git a/src/app/layout.tsx b/src/app/layout.tsx index e537172..44725c7 100755 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,18 +1,18 @@ import type { Metadata } from "next"; -import { Geist, Geist_Mono } from "next/font/google"; +import localFont from "next/font/local"; import "./globals.css"; import { Toaster } from "@/components/ui/toaster"; import { GameToaster } from "@/components/game/GameToast"; import { DebugProvider } from "@/lib/game/debug-context"; -const geistSans = Geist({ - variable: "--font-geist-sans", - subsets: ["latin"], +const geistSans = localFont({ + src: '../../public/fonts/GeistVF.woff', + variable: '--font-geist-sans', }); -const geistMono = Geist_Mono({ - variable: "--font-geist-mono", - subsets: ["latin"], +const geistMono = localFont({ + src: '../../public/fonts/GeistMonoVF.woff', + variable: '--font-geist-mono', }); export const metadata: Metadata = { diff --git a/src/components/game/tabs/CategorySkillsList.tsx b/src/components/game/tabs/CategorySkillsList.tsx index 65d7607..5aa6da8 100644 --- a/src/components/game/tabs/CategorySkillsList.tsx +++ b/src/components/game/tabs/CategorySkillsList.tsx @@ -5,7 +5,8 @@ import { useState } from 'react'; import type { SkillUpgradeChoice } from '@/lib/game/types'; -import { SKILLS_DEF, getTierMultiplier } from '@/lib/game/constants'; +import { SKILLS_DEF } from '@/lib/game/constants'; +import { getTierMultiplier } from '@/lib/game/skill-evolution'; import { getUnifiedEffects } from '@/lib/game/effects'; import { useSkillStore, useGameStore, usePrestigeStore } from '@/lib/game/stores'; import { SkillRow } from './SkillRow'; diff --git a/src/lib/game/crafting-apply.ts b/src/lib/game/crafting-apply.ts index f391d11..d62a48c 100644 --- a/src/lib/game/crafting-apply.ts +++ b/src/lib/game/crafting-apply.ts @@ -6,7 +6,7 @@ import { calculateApplicationTime, calculateApplicationManaPerHour } from './cra import { hasSpecial, SPECIAL_EFFECTS } from './special-effects'; import { computeEffects } from './upgrade-effects'; import type { AttunementState } from './types'; -import { calculateEnchantingXP } from './data/attunements'; +import { calculateEnchantingXP, getAttunementXPForLevel, MAX_ATTUNEMENT_LEVEL } from './data/attunements'; import { ENCHANTMENT_EFFECTS } from './data/enchantment-effects'; // ─── Application Validation ───────────────────────────────────────────────── @@ -184,7 +184,6 @@ export function updateEnchanterAttunement( let newXP = enchanterState.experience + xpGained; let newLevel = enchanterState.level; - import { getAttunementXPForLevel, MAX_ATTUNEMENT_LEVEL } from './data/attunements.js'; while (newLevel < MAX_ATTUNEMENT_LEVEL) { const xpNeeded = getAttunementXPForLevel(newLevel + 1);