"use client"; import { useEffect, useState } from "react"; import { useEditorStore } from "@/lib/store"; import { useIsMobile } from "@/lib/use-mobile"; export function InteractionPrompt() { const [showPrompt, setShowPrompt] = useState(false); const isPlaying = useEditorStore((s) => s.isPlaying); const isMobile = useIsMobile(); useEffect(() => { if (!isPlaying) { setShowPrompt(false); return; } const handleNearby = () => setShowPrompt(true); const handleFar = () => setShowPrompt(false); const handleDialogOpen = () => setShowPrompt(false); window.addEventListener("character-nearby", handleNearby); window.addEventListener("character-far", handleFar); window.addEventListener("dialog-open", handleDialogOpen); return () => { window.removeEventListener("character-nearby", handleNearby); window.removeEventListener("character-far", handleFar); window.removeEventListener("dialog-open", handleDialogOpen); }; }, [isPlaying]); if (!isPlaying || !showPrompt) return null; if (isMobile) { return ( ); } return (
Press "E" to interact
); }