fix winning modal
This commit is contained in:
parent
1c9e4d5aa4
commit
c76df16a5c
@ -100,24 +100,27 @@ const GameScreen = ({ nextLevel, won, open, openModal, closeModal, setLevel, res
|
||||
let nextRoute = levelIdx === levels.length - 1 ? '/won' : '/level/' + levels[levelIdx + 1].name;
|
||||
|
||||
let [idxMsgs, setMsgIdx] = useState(level.introMessages && level.introMessages.length > 0 ? 0 : null);
|
||||
console.log("GameScreen():won=", won)
|
||||
|
||||
// Auto-open modal for intro messages when level starts or when won
|
||||
useEffect(() => {
|
||||
// Auto-open modal for intro messages when level starts
|
||||
if (level.introMessages && level.introMessages.length > 0 && idxMsgs !== null && !open && !won) {
|
||||
openModal();
|
||||
console.log("GameScreen():autoopen")
|
||||
}
|
||||
|
||||
// Auto-open modal when won
|
||||
if (won && !open) {
|
||||
openModal();
|
||||
console.log("GameScreen():autoopen-won")
|
||||
}
|
||||
}, [idxMsgs, won, level.introMessages]); // Proper dependencies
|
||||
|
||||
useEffect(() => game.init(level), []); // only called at creation
|
||||
useEffect(() => {
|
||||
resetState();
|
||||
game.init(level);
|
||||
if (!level.introMessages || level.introMessages.length === 0) {
|
||||
closeModal();
|
||||
}
|
||||
}, [level]);
|
||||
|
||||
return (
|
||||
<div className="game" ref={modalContainerRef}>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user