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.

Munt opgooien openen

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.

Munt opgooien openen