brouillon4
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 | ||
| brouillon4 [2026/04/21 15:52] – nanaki | brouillon4 [2026/04/21 21:02] (Version actuelle) – nanaki | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | |||
| + | |||
| < | < | ||
| < | < | ||
| - | .controls { display: | + | body { font-family: |
| + | |||
| + | .controls { display: | ||
| + | |||
| + | #pointsBox { font-weight: | ||
| table { width:100%; border-collapse: | table { width:100%; border-collapse: | ||
| - | th, td { border:1px solid #ccc; padding: | + | th, td { border:1px solid #ccc; padding:6px; text-align: |
| th { background:# | th { background:# | ||
| tr: | tr: | ||
| Ligne 11: | Ligne 18: | ||
| .defensif { background:# | .defensif { background:# | ||
| .utilitaire { background:# | .utilitaire { background:# | ||
| + | .malediction { background:# | ||
| .lvl { padding:2px 6px; border-radius: | .lvl { padding:2px 6px; border-radius: | ||
| .lvl-1 { background:# | .lvl-1 { background:# | ||
| .lvl-2 { background:# | .lvl-2 { background:# | ||
| + | |||
| </ | </ | ||
| + | |||
| + | <div id=" | ||
| + | Points utilisés : <span id=" | ||
| + | </ | ||
| <div class=" | <div class=" | ||
| + | |||
| <select id=" | <select id=" | ||
| <option value=" | <option value=" | ||
| Ligne 24: | Ligne 38: | ||
| <select id=" | <select id=" | ||
| - | <option value=" | + | <option value=" |
| <option value=" | <option value=" | ||
| <option value=" | <option value=" | ||
| <option value=" | <option value=" | ||
| </ | </ | ||
| + | |||
| + | <select id=" | ||
| + | <option value=" | ||
| + | <option value=" | ||
| + | <option value=" | ||
| + | <option value=" | ||
| + | </ | ||
| + | |||
| + | <input type=" | ||
| + | |||
| </ | </ | ||
| Ligne 34: | Ligne 58: | ||
| < | < | ||
| <tr> | <tr> | ||
| - | < | + | <th> |
| - | < | + | <th> |
| - | < | + | < |
| + | < | ||
| < | < | ||
| - | < | + | < |
| </tr> | </tr> | ||
| </ | </ | ||
| Ligne 44: | Ligne 69: | ||
| < | < | ||
| - | <tr class=" | + | <!-- AUTO IMPORT SORTS --> |
| - | <td>Communs</td> | + | |
| - | <td>Attaque précise</td> | + | <tr class=" |
| - | <td>CAC</td> | + | <td><input type=" |
| - | <td>+4 toucher, -3 dégâts</td> | + | |
| - | < | + | |
| </tr> | </tr> | ||
| - | <tr class=" | + | <tr class=" |
| - | < | + | < |
| - | <td>Arme improvisée</ | + | </ |
| - | <td>Distance</ | + | |
| - | <td>-4 toucher, | + | <tr class=" |
| - | < | + | < |
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | <td><input type=" | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | <td><input type=" | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | <td><input type=" | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <!-- NIVEAU 2 exemples --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <!-- NIVEAU 3 --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <!-- NIVEAU 4 exemples --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <!-- NIVEAU 5 --> | ||
| + | |||
| + | <tr class=" | ||
| + | < | ||
| </tr> | </tr> | ||
| - | <tr class=" | + | <tr class=" |
| - | <td>Communs</td> | + | <td><input type=" |
| - | <td>Arcane ajustée</td> | + | |
| - | <td>Sort</td> | + | |
| - | <td>Avantage au toucher</td> | + | |
| - | < | + | |
| </tr> | </tr> | ||
| Ligne 72: | Ligne 183: | ||
| < | < | ||
| + | const maxPoints = 15; | ||
| + | |||
| const raceFilter = document.getElementById(" | const raceFilter = document.getElementById(" | ||
| const typeFilter = document.getElementById(" | const typeFilter = document.getElementById(" | ||
| + | const effectFilter = document.getElementById(" | ||
| + | const search = document.getElementById(" | ||
| const rows = document.querySelectorAll("# | const rows = document.querySelectorAll("# | ||
| + | const checkboxes = document.querySelectorAll(" | ||
| + | const pointsDisplay = document.getElementById(" | ||
| + | |||
| + | function updatePoints(e){ | ||
| + | let total = 0; | ||
| + | |||
| + | checkboxes.forEach(cb => { | ||
| + | if(cb.checked) total++; | ||
| + | }); | ||
| + | |||
| + | if(total > maxPoints){ | ||
| + | e.target.checked = false; | ||
| + | return; | ||
| + | } | ||
| + | |||
| + | pointsDisplay.textContent = total; | ||
| + | |||
| + | if(total >= maxPoints){ | ||
| + | checkboxes.forEach(cb => { | ||
| + | if(!cb.checked) cb.disabled = true; | ||
| + | }); | ||
| + | } else { | ||
| + | checkboxes.forEach(cb => cb.disabled = false); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | checkboxes.forEach(cb => cb.addEventListener(" | ||
| function filter(){ | function filter(){ | ||
| + | const term = search.value.toLowerCase(); | ||
| + | |||
| rows.forEach(row=> | rows.forEach(row=> | ||
| + | |||
| const raceOk = raceFilter.value===" | const raceOk = raceFilter.value===" | ||
| const typeOk = typeFilter.value===" | const typeOk = typeFilter.value===" | ||
| - | row.style.display = (raceOk && typeOk) ? "" | + | |
| + | const textOk = row.innerText.toLowerCase().includes(term); | ||
| + | |||
| + | | ||
| }); | }); | ||
| } | } | ||
| Ligne 86: | Ligne 234: | ||
| raceFilter.onchange = filter; | raceFilter.onchange = filter; | ||
| typeFilter.onchange = filter; | typeFilter.onchange = filter; | ||
| + | effectFilter.onchange = filter; | ||
| + | search.oninput = filter; | ||
| function sortTable(col){ | function sortTable(col){ | ||
| const tbody = document.querySelector("# | const tbody = document.querySelector("# | ||
| const rowsArr = Array.from(tbody.rows); | const rowsArr = Array.from(tbody.rows); | ||
| + | |||
| rowsArr.sort((a, | rowsArr.sort((a, | ||
| + | |||
| rowsArr.forEach(r=> | rowsArr.forEach(r=> | ||
| } | } | ||
| Ligne 96: | Ligne 248: | ||
| </ | </ | ||
| + | |||
brouillon4.1776779564.txt.gz · Dernière modification : 2026/04/21 15:52 de nanaki
