import customIcons from '../modules/iconsMap.js';
import { map } from "../map.js";
// Dictionnaire pour stocker les marqueurs des personnages
var characterMarkers = {};
// Fonction pour récupérer les positions des personnages
export default function fetchCharacterLocations() {
    fetch("/characterloc") // Effectuer une requête GET vers /characterloc
        .then((response) => response.json()) // Convertir la réponse en JSON
        .then((data) => {
            // Parcourir les données et afficher chaque position de personnage
            data.forEach((character) => {
                updateCharacterMarker(
                    character.literalValue,
                    character.locy,
                    character.locx
                );
            });
        })
        .catch((error) => {
            console.error("Error fetching character locations:", error);
        });
}
// Fonction pour créer ou mettre à jour un marqueur de personnage
function updateCharacterMarker(characterId, lat, lng) {
    // Vérifier si le marqueur existe déjà
    if (characterMarkers[characterId]) {
        // Mettre à jour la position du marqueur existant
        characterMarkers[characterId].setLatLng([lat, lng]);
    } else {
        // Créer un nouveau marqueur
        var marker = L.marker([lat, lng], { icon: customIcons.greenPlayer }).bindPopup(characterId).addTo(map);
        // Stocker le marqueur dans le dictionnaire
        characterMarkers[characterId] = marker;
    }
}
// Fonction pour récupérer les positions des personnages
async function getPlayersLocations() {
    const url = `/characterloc`;
    try {
        const response = await fetch(url);
        let data = await response.json();
        return data;
    } catch (error) {
        console.error(`Error fetching ${key} data:`, error);
    }
}
