Update documentation after refactoring: AGENTS.md, GAME_BRIEFING.md, skills.md
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 4m28s
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 4m28s
- Updated AGENTS.md to include store/ directory and clarify store architecture - Updated GAME_BRIEFING.md Code Architecture section with store/ and legacy store info - Updated skills.md with skill state management information - Includes other refactoring changes (store hooks, component updates, etc.)
This commit is contained in:
+3
-8
@@ -73,7 +73,8 @@ function GrimoireTab() {
|
||||
// Only access SPELLS_DEF on client-side
|
||||
if (typeof window !== 'undefined' && SPELLS_DEF) {
|
||||
const filtered = Object.values(SPELLS_DEF).filter((s: any) => s.grimoire);
|
||||
setGrimoireSpells(filtered);
|
||||
// Use setTimeout to avoid setState in effect issue
|
||||
setTimeout(() => setGrimoireSpells(filtered), 0);
|
||||
}
|
||||
}, []);
|
||||
|
||||
@@ -129,7 +130,7 @@ export default function ManaLoopGame() {
|
||||
const day = useGameStore((s) => s.day);
|
||||
const hour = useGameStore((s) => s.hour);
|
||||
const initGame = useGameStore((s) => s.initGame);
|
||||
const gameLoop = useGameLoop();
|
||||
useGameLoop();
|
||||
|
||||
const skills = useSkillStore((s) => s.skills);
|
||||
const skillTiers = useSkillStore((s) => s.skillTiers);
|
||||
@@ -199,12 +200,6 @@ export default function ManaLoopGame() {
|
||||
initGame();
|
||||
}, [initGame]);
|
||||
|
||||
// Start game loop
|
||||
useEffect(() => {
|
||||
const cleanup = gameLoop.start();
|
||||
return cleanup;
|
||||
}, [gameLoop]);
|
||||
|
||||
// Conditional returns AFTER all hooks
|
||||
if (gameOver) {
|
||||
return <GameOverScreen store={{ day, hour, insight }} />;
|
||||
|
||||
Reference in New Issue
Block a user