Widget:Test4: mudanças entre as edições

Ir para navegação Ir para pesquisar
sem sumário de edição
Sem resumo de edição
Sem resumo de edição
Linha 146: Linha 146:
                 <option value="NW">NW</option>
                 <option value="NW">NW</option>
             </select>
             </select>
        </div>
         </div>  
 
        <div class="input-group">
            <label for="huntTipo"><b>Tipo de Hunt:</b></label>
            <select id="huntTipo" class="maps__select disabled">
                <option value="">Selecione um tipo</option>
            </select>
         </div>


         <div class="input-group">
         <div class="input-group">
Linha 190: Linha 183:
         const hunts = {  
         const hunts = {  
             "NW": [
             "NW": [
                 { name: "Grimer", difficulty: "Baixa", local: "Cinnabar", classes: ["Orebound", "Psycraft"], imageUrl: "https://wiki.pokexgames.com/images/e/ee/Banner_Hunts_-_NW_Grimer.png", hasType: true, huntTypes: ["Poison"], huntTipo: "Elemental", link: "https://wiki.pokexgames.com/index.php/Cosmic_Quest_-_Boss_Solrock" },
                 { name: "Grimer", difficulty: "Baixa", local: "Cinnabar", classes: ["Orebound", "Psycraft"], imageUrl: "https://wiki.pokexgames.com/images/e/ee/Banner_Hunts_-_NW_Grimer.png", hasType: true, huntTypes: ["Poison"], link: "https://wiki.pokexgames.com/index.php/Cosmic_Quest_-_Boss_Solrock" },
                 { name: "Petilil", difficulty: "ssss", local: "Fuchsia", classes: ["Volcanic", "Naturia", "Malefic", "Seavell", "Wingeon"], imageUrl: "https://wiki.pokexgames.com/images/7/70/Nightmare_Hunt_Petilil.png", hasType: true, huntTypes: ["Grass"], huntTipo: "Neutro", link: "https://exemplo.com/hunt2" }
                 { name: "Petilil", difficulty: "ssss", local: "Fuchsia", classes: ["Volcanic", "Naturia", "Malefic", "Seavell", "Wingeon"], imageUrl: "https://wiki.pokexgames.com/images/7/70/Nightmare_Hunt_Petilil.png", hasType: true, huntTypes: ["Grass"], link: "https://exemplo.com/hunt2" }
             ],
             ],
         };
         };
Linha 232: Linha 225:


         document.addEventListener("DOMContentLoaded", function () {
         document.addEventListener("DOMContentLoaded", function () {
             const mapTypeSelect = document.getElementById("mapType");
             const mapTypeSelect = document.getElementById("mapType");  
            const huntTipoSelect = document.getElementById("huntTipo");
             const difficultySelect = document.getElementById("difficulty");
             const difficultySelect = document.getElementById("difficulty");
             const tagButtonsContainer = document.getElementById("tagButtons");
             const tagButtonsContainer = document.getElementById("tagButtons");
Linha 288: Linha 280:
                 filterHunts();
                 filterHunts();
             });
             });
 
         // Atualiza o dropdown de tipo de hunt com base no local selecionado
         mapTypeSelect.addEventListener("change", function () {
        function updateHuntTypeDropdown(location) {
            const huntList = hunts[location];
            huntTipoSelect.innerHTML = '<option value="">Selecione um tipo</option>';
            difficultySelect.innerHTML = '<option value="">Selecione uma Dificuldade</option>';
 
            if (huntList) {
            const types = new Set();
            huntList.forEach(hunt => {
                if (hunt.huntTipo) {
                types.add(hunt.huntTipo); // Pega "Elemental", "Legendary", etc.
                }
            });
            types.forEach(type => {
                const option = document.createElement("option");
                option.value = type;
                option.textContent = type;
                huntTipoSelect.appendChild(option);
            });
            huntTipoSelect.classList.remove("disabled");
            } else {
            huntTipoSelect.classList.add("disabled");
            }
        }
 
        huntTipoSelect.addEventListener("change", function () {
             const selectedMap = mapTypeSelect.value;
             const selectedMap = mapTypeSelect.value;
            const selectedHuntType = huntTipoSelect.value;
             const huntList = hunts[selectedMap];
             const huntList = hunts[selectedMap];
             difficultySelect.innerHTML = '<option value="">Selecione uma Dificuldade</option>';
             difficultySelect.innerHTML = '<option value="">Selecione uma Dificuldade</option>';


             if (huntList && selectedHuntType) {
             if (huntList) {
             const difficulties = new Set();
             const difficulties = new Set();
             huntList.forEach(hunt => {
             huntList.forEach(hunt => {
                 if (hunt.huntTipo === selectedHuntType && hunt.difficulty) {
                 if (hunt.mapType === selectedMap && hunt.difficulty) {
                 difficulties.add(hunt.difficulty); // Pega "Baixa", "Média", etc.
                 difficulties.add(hunt.difficulty); // Pega "Baixa", "Média", etc.
                 }
                 }
Linha 342: Linha 308:
             // Filtra as hunts com base nos critérios selecionados
             // Filtra as hunts com base nos critérios selecionados
             function filterHunts() {
             function filterHunts() {
                 const selectedMap = mapTypeSelect.value;
                 const selectedMap = mapTypeSelect.value;  
                const selectedHuntType = huntTipoSelect.value;
                 const selectedDifficulty = difficultySelect.value;
                 const selectedDifficulty = difficultySelect.value;
                 imageContainer.innerHTML = "";
                 imageContainer.innerHTML = "";
Linha 352: Linha 317:
                 huntList.forEach(hunt => {
                 huntList.forEach(hunt => {
                     const matchesTags = selectedTags.length === 0 || selectedTags.some(tag => hunt.classes.includes(tag));
                     const matchesTags = selectedTags.length === 0 || selectedTags.some(tag => hunt.classes.includes(tag));
                     const matchesTypes = selectedTypes.length === 0 || selectedTypes.some(type => hunt.huntTypes.includes(type));
                     const matchesTypes = selectedTypes.length === 0 || selectedTypes.some(type => hunt.huntTypes.includes(type));  
                    const matchesHuntType = !selectedHuntType || hunt.huntTipo === selectedHuntType;
                     const matchesDifficulty = !selectedDifficulty || hunt.difficulty === selectedDifficulty;
                     const matchesDifficulty = !selectedDifficulty || hunt.difficulty === selectedDifficulty;


Linha 388: Linha 352:
                 filterHunts();
                 filterHunts();
             });
             });
 
            huntTipoSelect.addEventListener("change", filterHunts);
             difficultySelect.addEventListener("change", filterHunts);
             difficultySelect.addEventListener("change", filterHunts);


7 895

edições

Menu de navegação