import React, { useState, useEffect } from "react"; import GameDataManager from "../../../services/GameDataManager.js"; import "./styles/DungeonsTab.css"; const DungeonsTab = ({ startDungeon }) => { const [dungeons, setDungeons] = useState([]); const [selectedDungeon, setSelectedDungeon] = useState(null); const [showSelector, setShowSelector] = useState(true); useEffect(() => { const allKeys = Array.from(GameDataManager.dungeons.keys()); const uniqueDungeons = Array.from(new Set(allKeys)) .map((id) => GameDataManager.getDungeon(id)) .filter( (d, index, self) => d && self.findIndex((t) => t.id === d.id) === index, ); setDungeons(uniqueDungeons); if (uniqueDungeons.length > 0 && !selectedDungeon) { setSelectedDungeon(uniqueDungeons[0]); } }, []); const handleSelectDungeon = (id) => { const translatedDungeon = GameDataManager.getDungeon(id); setSelectedDungeon(translatedDungeon); if (window.innerWidth <= 768) { setShowSelector(false); } }; return (
{selectedDungeon.description || "No tactical briefing available for this sector."}
WAITING_FOR_COORDINATES...