brouillon2
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| brouillon2 [2026/04/21 17:22] – nanaki | brouillon2 [2026/04/23 22:28] (Version actuelle) – nanaki | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| < | < | ||
| + | < | ||
| + | <meta charset=" | ||
| < | < | ||
| - | body { font-family: | + | body { font-family: |
| - | .controls | + | table { border-collapse: collapse; width: 100%; font-size: 13px; } |
| + | td, th { border: 1px solid #ccc; padding: 5px; } | ||
| + | th { background: #f2f2f2; cursor:pointer; } | ||
| - | #pointsBox | + | /* Catégories */ |
| + | .sort { background: | ||
| + | .cac { background: #ffe5e5; } | ||
| + | .tir { background: #e5f0ff; } | ||
| + | .survie { background: #e5fff5; } | ||
| + | .furtivite { background: #f5e5ff; } | ||
| - | table { width: | + | /* Effets */ |
| - | th, td { border:1px solid #ccc; padding: | + | .offensif |
| - | th { background:# | + | .defensif |
| - | tr:nth-child(even){ background:#fafafa; } | + | .malediction |
| - | .offensif { background:# | + | /* Passifs */ |
| - | .defensif { background:# | + | .P { background: # |
| - | .utilitaire | + | |
| - | .malediction { background:# | + | |
| - | + | ||
| - | .lvl { padding:2px 6px; border-radius: | + | |
| - | .lvl-1 { background:# | + | |
| - | .lvl-2 { background:# | + | |
| + | .controls { margin-bottom: | ||
| </ | </ | ||
| + | </ | ||
| - | <div id=" | + | <body> |
| - | Points utilisés : <span id=" | + | |
| - | </div> | + | |
| <div class=" | <div class=" | ||
| - | <select | + | Points : <span id="points">0</span> / 15 |
| - | <option value=" | + | |
| - | <option value=" | + | |
| - | </ | + | |
| - | <select id="typeFilter"> | + | < |
| - | <option value=" | + | |
| - | <option value=" | + | Recherche : |
| - | <option value=" | + | <input type=" |
| - | <option value=" | + | |
| + | Filtre catégorie : | ||
| + | <select id="filterCat"> | ||
| + | <option value=" | ||
| + | <option value=" | ||
| + | <option value=" | ||
| + | <option value=" | ||
| + | <option value=" | ||
| + | <option value=" | ||
| </ | </ | ||
| - | <select id="effectFilter"> | + | Filtre effet : |
| - | <option value=" | + | <select id="filterEffect"> |
| + | <option value=" | ||
| <option value=" | <option value=" | ||
| - | <option value=" | + | <option value=" |
| <option value=" | <option value=" | ||
| </ | </ | ||
| - | < | + | Filtre |
| + | <select id="filterType"> | ||
| + | <option value="all"> | ||
| + | <option value="S"> | ||
| + | <option value=" | ||
| + | <option value=" | ||
| + | <option value=" | ||
| + | <option value=" | ||
| + | <option value=" | ||
| + | </select> | ||
| </ | </ | ||
| - | <table id="table"> | + | <table id="skills"> |
| < | < | ||
| <tr> | <tr> | ||
| - | <th>Choix</ | + | < |
| - | < | + | < |
| - | < | + | < |
| - | < | + | <th onclick=" |
| + | < | ||
| + | <th onclick=" | ||
| < | < | ||
| - | <th>Niveau</th> | + | <th>Portée</ |
| + | <th onclick=" | ||
| </tr> | </tr> | ||
| </ | </ | ||
| Ligne 67: | Ligne 89: | ||
| < | < | ||
| - | < | + | < |
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| - | <tr class=" | + | <tr class=" |
| < | < | ||
| - | <td>Communs</td> | + | <td>com</ |
| - | <td>Boule de feu</td> | + | |
| - | <td>Sort</td> | + | |
| - | <td>Dégâts de feu + brûlure</td> | + | |
| - | < | + | |
| </tr> | </tr> | ||
| - | <tr class=" | + | <tr class=" |
| < | < | ||
| - | <td>Communs</td> | + | <td>com</ |
| - | <td>Entraide</td> | + | |
| - | <td>Sort</td> | + | |
| - | <td>Soigne et protège un allié</td> | + | |
| - | < | + | |
| </tr> | </tr> | ||
| - | <tr class=" | + | <tr class=" |
| < | < | ||
| - | <td>Communs</td> | + | <td>com</ |
| - | <td>Maudit</td> | + | |
| - | <td>Sort</td> | + | |
| - | <td>Affaiblit la cible</td> | + | |
| - | < | + | |
| </tr> | </tr> | ||
| - | </tbody> | + | <tr class=" |
| - | </table> | + | < |
| + | < | ||
| + | </tr> | ||
| - | <script> | + | <tr class=" |
| - | const maxPoints | + | < |
| + | < | ||
| + | </tr> | ||
| - | const raceFilter | + | <tr class="sort defensif" |
| - | const typeFilter | + | < |
| - | const effectFilter | + | < |
| - | const search | + | </tr> |
| - | const rows = document.querySelectorAll("#table tbody tr"); | + | |
| - | const checkboxes | + | |
| - | const pointsDisplay = document.getElementById(" | + | |
| - | function updatePoints(e){ | + | <tr class=" |
| - | let total = 0; | + | < |
| + | < | ||
| + | </tr> | ||
| - | checkboxes.forEach(cb | + | <tr class="sort defensif" |
| - | if(cb.checked) total++; | + | < |
| - | }); | + | < |
| + | </tr> | ||
| - | if(total | + | <tr class=" |
| - | | + | < |
| - | | + | < |
| - | } | + | </tr> |
| - | pointsDisplay.textContent | + | <tr class="sort malediction" |
| + | < | ||
| + | < | ||
| + | </tr> | ||
| - | if(total >= maxPoints){ | + | <tr class="sort malediction" |
| - | checkboxes.forEach(cb | + | < |
| - | | + | < |
| - | }); | + | </tr> |
| - | } else { | + | |
| - | checkboxes.forEach(cb | + | |
| - | } | + | |
| - | } | + | |
| - | checkboxes.forEach(cb => cb.addEventListener(" | + | <!-- NIVEAU 2 --> |
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <!-- NIVEAU 3 --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <!-- NIVEAU 4 --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <!-- NIVEAU 5 --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | |||
| + | |||
| + | <!-- CAC --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | |||
| + | <!-- ===== NIVEAU 2 ===== --> | ||
| + | |||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | |||
| + | <!-- ===== NIVEAU 3 ===== --> | ||
| + | |||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | |||
| + | <!-- ===== NIVEAU 4 ===== --> | ||
| + | |||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | <tr class=" | ||
| + | |||
| + | |||
| + | <!-- DISTANCE --> | ||
| + | |||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <!-- ===== NIVEAU 2 ===== --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <!-- ===== NIVEAU 3 ===== --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <!-- ===== NIVEAU 4 ===== --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | |||
| + | <!-- SURVIE --> | ||
| + | |||
| + | <!-- ===== NIVEAU 2 ===== --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <td>6 MP</ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <!-- ===== NIVEAU 4 ===== --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | |||
| + | <!-- FURTIVITE --> | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | <!-- ===== NIVEAU 1 ===== --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <td>X MP, Y Mvt, 1A</ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <!-- ===== NIVEAU 3 ===== --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <td>X MP, Y Mvt</ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | |||
| + | |||
| + | <!-- ===== NIVEAU 4 ===== --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <td>X MP, Y Mvt</ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <td>X MP, Y Mvt</ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <td>X MP, Y Mvt</ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <td>X MP, Y Mvt</ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <td>X MP, Y Mvt</ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | |||
| + | // POINTS | ||
| + | let max = 15; | ||
| + | |||
| + | document.querySelectorAll(" | ||
| + | cb.addEventListener(" | ||
| + | let total = document.querySelectorAll(" | ||
| + | if(total > max){ cb.checked=false; | ||
| + | points.innerText = total; | ||
| + | }); | ||
| + | }); | ||
| + | |||
| + | // FILTRE | ||
| function filter(){ | function filter(){ | ||
| - | const term = search.value.toLowerCase(); | + | let cat = filterCat.value; |
| + | let eff = filterEffect.value; | ||
| + | let type = filterType.value; | ||
| + | let s = search.value.toLowerCase(); | ||
| - | rows.forEach(row=>{ | + | document.querySelectorAll("# |
| + | let txt = r.innerText.toLowerCase(); | ||
| - | const raceOk = raceFilter.value==="Toutes" || row.classList.contains(raceFilter.value); | + | let ok = |
| - | const typeOk | + | (cat=="all" || (r.dataset.cat||"" |
| - | const effectOk = effectFilter.value==="Tous" || row.dataset.effect===effectFilter.value; | + | (eff=="all" || (r.dataset.effect||"" |
| - | const textOk = row.innerText.toLowerCase().includes(term); | + | (type=="all" || (r.dataset.type||"" |
| + | txt.includes(s); | ||
| - | row.style.display = (raceOk && typeOk && effectOk && textOk) | + | r.style.display = ok ? "" |
| - | }); | + | }); |
| } | } | ||
| - | raceFilter.onchange = filter; | + | filterCat.onchange = filter; |
| - | typeFilter.onchange = filter; | + | filterEffect.onchange = filter; |
| - | effectFilter.onchange = filter; | + | filterType.onchange = filter; |
| search.oninput = filter; | search.oninput = filter; | ||
| - | function sortTable(col){ | + | // TRI |
| - | const tbody = document.querySelector("#table tbody" | + | function sortTable(n){ |
| - | const rowsArr | + | let rows = Array.from(document.querySelectorAll("#skills |
| + | let asc = document.body.dataset.sort !== " | ||
| - | rowsArr.sort((a, | + | rows.sort((a, |
| + | let x = a.cells[n].innerText.toLowerCase(); | ||
| + | let y = b.cells[n].innerText.toLowerCase(); | ||
| + | return asc ? x.localeCompare(y, | ||
| + | : y.localeCompare(x, | ||
| + | }); | ||
| - | rowsArr.forEach(r=> | + | document.body.dataset.sort = asc ? " |
| + | rows.forEach(r=> | ||
| } | } | ||
| + | |||
| </ | </ | ||
| + | </ | ||
| </ | </ | ||
| - | |||
brouillon2.1776784969.txt.gz · Dernière modification : 2026/04/21 17:22 de nanaki
