MUNTHUIS / GEGRAVEERD MUNTREGISTER
Lees het tweezijdige muntregister vóór je werpt
Dit gegraveerde grootboek beschrijft de huidige munt-editor: vijf selecteerbare ontwerp-ID’s, zichtbare knop- en sleepbediening, resultaatuitdrukking, bewegingswaarden, getoond register, opgeslagen waarden, geluid en confetti.
- 5 ontwerp-ID’s
- knoppad flipCoin(1.5)
- 20 records · weergave 10
Motiefkiezer / vijf gegraveerde ID’s
De kiezer bevat precies vijf ID’s: euro, dollar, chf, gbp en gold. De editor lost namen en zijlabels op uit zijn ontwerpobjecten en gelokaliseerde naamkoppeling.
- euro
- dollar
- chf
- gbp
- gold
De vijf ID’s duiden selecteerbare ontwerpen in deze interface aan; dit register kent er geen ander kenmerk aan toe.
Activeringsrail / knop, slepen, toets
Gebruik de zichtbare knop of sleepbediening. De knop roept flipCoin(1.5) aan. isFlipping voorkomt een ander werppad terwijl er een loopt.
01 · KNOP — Zichtbare werpbediening
Drukken op de zichtbare bediening roept flipCoin(1.5) aan. De bediening is uitgeschakeld zolang isFlipping true is.
02 · SLEPEN — Opwaartse offset
offset = max(dragStartY - clientY, 0), begrensd op 100px. Sleep-einde start alleen bij offset > 30 of velocity > 2, met max(offset / 30, velocity / 3).
03 · TOETS — Enter- of Spatie-guard
Enter of Space roept flipCoin(1.5) alleen aan wanneer het eventdoel geen input, textarea, button, select of [contenteditable=true] is.
Bewegingsplaat / resultaat en rotatie
De editor leidt de getoonde zijde af met Math.random() > 0.5 ? heads : tails en gebruikt requestAnimationFrame voor bewegingsupdates.
RESULTAAT — Uitdrukking van de zijde
Math.random() > 0.5 ? heads : tails. De eindrotatie is heads = 0 en tails = 180.
WENTELINGEN — Rotatiecomponenten
Voor flipCoin(velocity=1) geldt baseFlips=4 en extraFlips=min(velocity*2,6). total rotation=(baseFlips+extraFlips)*360+end rotation.
TIJD — Bewegingsduur
duration=1500+velocity*500 ms. requestAnimationFrame werkt rotatie, boog, schaal en schaduw bij tijdens het pad.
Worpregister / zichtbare geschiedenisgrens
Wanneer de beweging eindigt, worden showResult, confetti-state en FlipResult result/timestamp/coinType gezet; het resultaat wordt vooraan ingevoegd, total stijgt met 1 en een analytics-event wordt verzonden.
GESCHIEDENIS — Vooraan invoegen, 20 behouden
De editor zet FlipResult vooraan en bewaart hoogstens 20 geschiedenisitems.
ZIJAANZICHT — Toont 10 items
Het zijaanzicht gebruikt history.slice(0,10). Bij niet-lege geschiedenis toont het afgeronde heads- en tails-percentages uit de huidige geschiedenis.
UITLEZING — Alleen getoond register
De tellingen en percentages beschrijven de getoonde geschiedenis; deze pagina behandelt ze niet als statistische of kansbeoordeling.
Grootboek opgeslagen waarden / laden en wissen
Bij mount leest de editor coinFlipHistory, coinFlipTotalFlips, coinFlipSound en coinFlipSelectedCoin. Het effect schrijft geschiedenis, ook een lege array, totaal, geluid en geselecteerde munt-ID.
LADEN — Geaccepteerde waarden
Geschiedenis accepteert alleen objecten met result heads of tails en snijdt af op 20. Total wordt alleen geaccepteerd wanneer finite en >= 0; selectedCoin moet een bekende ontwerp-ID zijn.
PARSE — Ongeldig JSON-pad
Als JSON-parsing faalt, worden coinFlipHistory en coinFlipTotalFlips verwijderd. Geluid en geselecteerde munt worden daarna uit aanwezige strings opgelost.
WISSEN — Geschiedenis en total resetten
Geschiedenis wissen zet history op [] en totalFlips op 0; het effect schrijft die nieuwe waarden daarna onder de genoemde sleutels.
Omvangnotities
- AudioContext wordt tijdens een worp geprobeerd; een ondersteunde onderbroken context wordt hervat en de zichtbare bediening schakelt geluid.
- Na het eindpad start de confetti-state een canvasloop met 150 deeltjes en het effect ruimt de animation frame-loop op.
- Dit register beschrijft editorvertakkingen en zichtbare bediening, geen beoordeling van een uitkomst of weergave.
- Gebruik de zichtbare knop en sleepbediening om met de editor te werken.
Verder met aangrenzende tools
Elke gekoppelde tool heeft eigen bediening en toestandspad.
- Keuzewiel
Open de interface voor items en wielbediening.
- Sudoku
Open de rasterpuzzelinterface.
- Woordpuzzel
Open de woordpuzzelinterface.
Vragen over het muntregister
Welke motieven zijn selecteerbaar?
De kiezer heeft de ID’s euro, dollar, chf, gbp en gold. De editor lost zichtbare namen en zijlabels op uit bestaande ontwerp- en lokalisatiekoppelingen.
Hoe kan een worp starten?
De zichtbare knop roept flipCoin(1.5) aan. Slepen gebruikt offset = max(dragStartY - clientY, 0), begrensd op 100px, en activeert alleen bij offset > 30 of velocity > 2. Enter of Space volgt de doelguard en roept flipCoin(1.5) aan.
Welke uitdrukking en bewegingswaarden worden gebruikt?
De zijde-uitdrukking is Math.random() > 0.5 ? heads : tails. baseFlips=4, extraFlips=min(velocity*2,6), duration=1500+velocity*500 ms en total rotation=(baseFlips+extraFlips)*360+end rotation.
Wat toont het zijaanzicht?
Geschiedenis behoudt 20 items, het zijaanzicht gebruikt history.slice(0,10), en een niet-lege geschiedenis toont afgeronde heads- en tails-percentages voor die weergave.
Welke opgeslagen waarden worden gelezen en geschreven?
De genoemde waarden zijn coinFlipHistory, coinFlipTotalFlips, coinFlipSound en coinFlipSelectedCoin. Ongeldig JSON verwijdert geschiedenis en total; wissen zet history op [] en total op 0 voordat het effect ze schrijft.
Wat doen de geluids- en confettipaden?
Een worp probeert AudioContext en hervat een ondersteunde onderbroken context. Aan het eind voert de confetti-state een canvasloop met 150 deeltjes uit die zijn animation frame-loop opruimt.
Muntbediening openen
Kies een zichtbaar motief, gebruik knop of slepen en lees het getoonde register.