import React, { useState, useEffect } from 'react';const movieTitles = [ "AVATAR", "TITANIC", "JAWS", "ALIEN", "FROZEN", "GLADIATOR", "INCEPTION", "MATRIX", "CASABLANCA", "PSYCHO", "GODFATHER", "JURASSIC", "PULP FICTION"];const MovieWordle = () => { const [answer, setAnswer] = useState(''); const [guesses, setGuesses] = useState(Array(6).fill(null)); const [currentGuess, setCurrentGuess] = useState(''); const [gameOver, setGameOver] = useState(false); useEffect(() => { setAnswer(movieTitles[Math.floor(Math.random() * movieTitles.length)]); }, []); const handleKeyDown = (event) => { if (gameOver) return; if (event.key === 'Enter') { if (currentGuess.length !== answer.length) { alert(`Guess must be ${answer.length} characters long!`); return; } const newGuesses = [...guesses]; const firstNullIndex = newGuesses.findIndex(guess => guess == null); newGuesses[firstNullIndex] = currentGuess; setGuesses(newGuesses); setCurrentGuess(''); if (currentGuess === answer) { setGameOver(true); alert('Congratulations! You guessed the movie!'); } else if (firstNullIndex === newGuesses.length - 1) { setGameOver(true); alert(`Game over! The movie was ${answer}`); } } else if (event.key === 'Backspace') { setCurrentGuess(currentGuess.slice(0, -1)); } else if (event.key.match(/^[A-Za-z]$/)) { if (currentGuess.length < answer.length) { setCurrentGuess((oldGuess) => oldGuess + event.key.toUpperCase()); } } }; useEffect(() => { window.addEventListener('keydown', handleKeyDown); return () => window.removeEventListener('keydown', handleKeyDown); }, [currentGuess, answer, gameOver, guesses]); return (