v22
This commit is contained in:
parent
e7e7912211
commit
3aa9d129f1
4 changed files with 19 additions and 10 deletions
|
|
@ -275,6 +275,8 @@
|
|||
.slcDonut.clickable .donutSeg{cursor:pointer;transition:opacity .12s}
|
||||
.slcDonut.clickable .donutSeg:hover{opacity:.82}
|
||||
.slcDonut .donutSeg.bad{stroke:var(--bad);stroke-width:4}
|
||||
.akteItem.flash{animation:akteFlash 1.6s ease-out}
|
||||
@keyframes akteFlash{0%,55%{background:#fff3bf}100%{background:transparent}}
|
||||
.slcCap{font-size:11px;color:var(--muted);margin-top:4px;text-align:center}
|
||||
@media(max-width:680px){.classifyTop{grid-template-columns:1fr}.classifyCard{max-width:300px;margin:0 auto}.classifyMain{margin-top:6px}}
|
||||
.choice{text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;font-size:15px;font-weight:600}
|
||||
|
|
@ -1106,7 +1108,7 @@ function defaultState(){
|
|||
classifyDone:false, classifyWrong:null,
|
||||
freigabeDone:false, freigabeWrong:null,
|
||||
entryDone:false, entryWrong:null,
|
||||
bonusReveal:false, bonusDone:{}, servicesDone:{},
|
||||
bonusReveal:false, bonusDone:{}, servicesDone:{}, akteFlash:null,
|
||||
index:0, stage:"discuss", quizIndex:0,
|
||||
actStep:0, actReveal:false, actDone:false, arteWrong:null,
|
||||
picks:{}, done:{}, akte:{},
|
||||
|
|
@ -1173,7 +1175,7 @@ function renderAkte(){
|
|||
html += `<h3>${PHASEN[ph].label}</h3>`;
|
||||
group.forEach(a=>{
|
||||
const ok = !!have[a];
|
||||
html += `<div class="akteItem ${ok?'have':''}">
|
||||
html += `<div class="akteItem ${ok?'have':''} ${a===S.akteFlash?'flash':''}">
|
||||
<span class="aId" style="background:${PHASEN[ph].color}">${a}</span>
|
||||
<span class="aNm">${ARTEFAKTE[a].name}${ARTEFAKTE[a].live?' · <i>lebend</i>':''}</span>
|
||||
<span class="aChk">${ok?'✓':'○'}</span>
|
||||
|
|
@ -1558,6 +1560,7 @@ function enterStation(idx){
|
|||
S.stage = STATIONEN[idx].typ==="gate" ? "gate" : "act";
|
||||
S.gatePick = null; S.quizIndex = 0;
|
||||
S.actStep = 0; S.actReveal = false; S.actDone = false; S.arteWrong = null;
|
||||
S.akteFlash = null; document.body.classList.remove("akteOpen");
|
||||
}
|
||||
function gateGoto(st, i){
|
||||
S.done[st.id] = true;
|
||||
|
|
@ -1811,13 +1814,16 @@ function wire(st){
|
|||
const b = id => $("#"+id);
|
||||
if(b("actReveal")) b("actReveal").onclick = ()=>{ S.actReveal=true; save(); draw(); };
|
||||
if(b("actNext")) b("actNext").onclick = ()=>{ S.actStep=(S.actStep||0)+1; S.actReveal=false; save(); draw(); };
|
||||
if(b("actToDone")) b("actToDone").onclick = ()=>{ S.actDone=true; save(); draw(); };
|
||||
if(b("actToDone")) b("actToDone").onclick = ()=>{ S.actDone=true; S.akteFlash=null; document.body.classList.remove("akteOpen"); save(); draw(); };
|
||||
// Artefakt-Choice
|
||||
$("#panel").querySelectorAll(".arteChoice[data-a]").forEach(el=>{
|
||||
el.onclick = ()=>{ const a = el.dataset.a;
|
||||
if(a === STATION_ARTEFAKT[st.id]){ S.arteWrong=null; addArtefakt(a); S.actReveal=true; }
|
||||
el.onclick = ()=>{ const a = el.dataset.a; let correct=false;
|
||||
if(a === STATION_ARTEFAKT[st.id]){ S.arteWrong=null; addArtefakt(a); S.akteFlash=a; S.actReveal=true; correct=true; }
|
||||
else { S.arteWrong = a; }
|
||||
save(); draw(); };
|
||||
save(); draw();
|
||||
// Akte-Seitenleiste oeffnen, damit man sieht, dass das Artefakt nun drin ist
|
||||
if(correct){ document.body.classList.remove("navOpen","rollenOpen"); document.body.classList.add("akteOpen"); }
|
||||
};
|
||||
});
|
||||
if(b("actBack")) b("actBack").onclick = ()=>{
|
||||
if(S.actDone){ S.actDone=false; }
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/* Service Worker — SLC-Workshop Companion (App-Shell, offline-first) */
|
||||
const CACHE = "slc-companion-v25";
|
||||
const CACHE = "slc-companion-v26";
|
||||
const SHELL = ["./", "index.html", "manifest.webmanifest", "icon.svg"];
|
||||
// Action-Card-Grafiken (cards/s<service>-c<change>.png) fuer Offline vorab cachen (alle 24).
|
||||
const CARDS = [];
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue