Note : tous les Barons aléatoires n'apparaissent qu'après avoir apaisé Fragilady et validé la mission principale associée. De plus, les apparitions contenant Spiritomb s'activent qu'après avoir terminé la mission secondaire 22 en les 28 Zarbi cachés à Hisui.
Pokémon
Carte
";
}
else { datatable_str = "Rien";}
lastClicked = e.target;
lastClicked._icon.classList.add("leaflet-clicked-marker");
document.getElementById('data_table').innerHTML = datatable_str;
}
// initialise les marqueurs de Pokémon
function build_markers() {
layerGroup.clearLayers();
var num = "";
var pos_x = "";
var pos_y = "";
// pour tous les Pokémon de la liste data
for(let i = 0; i < all_data.length; i++) {
if ((num != all_data[i][3])||((pos_x != all_data[i][0][0][0])&&(pos_y != all_data[i][0][0][1]))) {
num = all_data[i][3];
pos_x = all_data[i][0][0][0];
pos_y = all_data[i][0][0][1];
// initialise chaque élément de pokemon_layers à un layerGroup vide
if (pokemon_layers[num] == null) {
pokemon_layers[num] = L.layerGroup([]);
}
// initialise l'image du marqueur du Pokémon
let iconHtml = '';
iconHtml += '';
// crée un marqueur cliquable pour chaque position et le stocke dans pokemon_layers
for(let k = 0; k < all_data[i][0].length; k++) {
marker = new L.Marker(all_data[i][0][k], {icon: new L.divIcon({ html: iconHtml, iconSize: [40, 40]}),title: num}).on('click', markerClickEvent);
pokemon_layers[num].addLayer(marker);
}
}
}
}
// affiche les marqueurs de Pokémon en fonction de l'id reçu
var $li = $('#myUL li').click(function() {
document.getElementById('data_table').innerHTML = "";
$li.removeClass('selected');
$(this).addClass('selected');
id = $(this).attr('id');
if (document.documentElement.clientWidth < 620) { base_zoom = -1;}
else { base_zoom = 0; }
map.setView([300, 300], base_zoom );
// si le layer sélectionné est null, on l'enlève de la carte
if(selectedLayer != null) {
map.removeLayer(pokemon_layers[selectedLayer]);
}
// tous les marqueurs associés au Pokémon de numéro id sont affichés sur la carte
pokemon_layers[id].addTo(map);
selectedLayer = id;
pokemon_layers[selectedLayer].eachLayer(function (layer) {
let popup_html = getPopupHTML(selectedLayer, [layer.getLatLng().lat, layer.getLatLng().lng]);
layer.bindPopup(popup_html, {maxWidth: "auto"});
});
});
function getPopupHTML(numero, coord) {
let popup_str = '';
for(let j = 0; j < all_data.length; j++) {
for (let l = 0; l < all_data[j][0].length; l++) {
if ((numero == all_data[j][3])&&(all_data[j][0][l][0] == coord[0])&&(all_data[j][0][l][1] == coord[1])) {
baron = all_data[j][4];
periode = all_data[j][5];
nb_apparitions = all_data[j][1][l];
if (baron === "oui") { image_baron = '';}
else { image_baron = "";}
if (periode === "Matin/Jour/Soir") { popup_str = popup_str + '
'; } }
for (let k = 0; k < 8; k++) { if (meteos_dispo[k] == 1) { poke_str_res = poke_str_res + '
' + rowsdata[i][9+k] + '
'; } }
poke_str_res = poke_str_res + '
';
}
return(poke_str_res);
}
map.fitBounds(bounds);
function search_pokemon() {
// Declare variables
var input, filter, ul, li, a, i, txtValue;
input = document.getElementById('myInput');
filter = input.value.toUpperCase();
ul = document.getElementById("myUL");
li = ul.getElementsByTagName('li');
// Loop through all list items, and hide those who don't match the search query
for (i = 0; i < li.length; i++) {
a = li[i].getElementsByTagName("strong")[0];
txtValue = a.textContent || a.innerText;
if (txtValue.toUpperCase().indexOf(filter) > -1) {
li[i].style.display = "";
} else {
li[i].style.display = "none";
}
}
}