Kyauta Jefa Kudi & Zagayen Wuri
Jefa kudi na zahiri, zagaya wani zagaye da za a iya keɓancewa, ko zaɓi bazuwar daga jerin zaɓuɓɓuka. Yana amfani da bazuwar amintacce ta browser ɗinka — ba jefa hukuma da za a iya tabbatarwa ba, don haka ka guji gasa da aka tsara.
🔒 Duk uku suna amfani da injin bazuwar mai aminci na burauzarka: ana zaɓar sakamako tukuna, sannan a yi motsi — kudin gaskiya ne 50/50, ana juya kekewa zuwa sakamakon da aka riga aka zaɓa, kuma mai zaɓin ba shi da son kai. Babu abin da ke barin na'urarka. Wannan adalci ne don amfani na yau da kullum, amma ba zaɓe ne na jama'a mai tantancewa ba, don haka ka guji gasa masu ƙa'ida ko shawarwari masu daraja mai girma.
Yadda Yake Aiki
Dukkan yanayoyi guda uku — juyar da tsabar kuɗi, jujjuya keke, da zaɓen zaɓi — suna amfani da Web Crypto API na burauza da aka gina (crypto.getRandomValues) don samar da sakamakon nasara, sannan suna tuka motsi gaba ɗaya a gefen abokin ciniki da canjin CSS da requestAnimationFrame. Babu uwar garke da abin ya shafa a kowane lokaci.
- 1Web Crypto yana zaɓen wanda ya ci nasaraKafin duk motsi ya fara, crypto.getRandomValues yana cika Uint32Array da lamba mai lamba 32-bit ta bazuwar ta cryptographic. Wani lissafin modulo yana mayar da shi zuwa yawan zaɓuɓɓuka (2 don heads/tails, N don keke ko zaɓen), don haka kowane sakamako yana da yiwuwa daidai daidai.
- 2An lissafta kusurwar juyawa don isa ga sakamakoDon tsabar kuɗi, lambar tana lissafta gajeriyar ƙarin juyawa (a kan kusurwar da aka tara na yanzu) wanda yake ƙarewa da fuska daidai a sama — heads a 0°, tails a 180° — sannan yana ƙara juyawa cikakke 5 don yayi kama da juyawa na gaskiya. Keken yana yin iri ɗaya: yana gano ƙarin kusurwa wanda yake kawo yankin nasara ƙarƙashin alamar, yana ƙara juyawa cikakke 6, kuma yana amfani da wani ɗan girgiza bazuwar don alamar ba ta tsayawa koyaushe a tsakiyar yankin ba.
- 3Sauyawar CSS da requestAnimationFrame suna tuka motsinTsabar kuɗi da keke suna motsi ta hanyar canjin CSS tare da lanƙwasar sauƙaƙawa ta cubic-bezier da aka yi amfani da ita a kan ƙimar juyawa guda ɗaya da aka tara — babu bukatun JavaScript a kowace firam da zarar an saita kusurwar. Zaɓen zaɓi yana amfani da requestAnimationFrame maimakon haka: a kowace firam, wani tazara mai girma na quadratic yana tantance ko za a ci gaba da haske, yana samar da raguwa irin ta na'urar slot-machine wanda koyaushe yake tsayawa a kan wanda aka riga aka tantance a matsayin nasara.
- 4An bayyana sakamakon kuma an rubuta shi zuwa tarihin zamanWani setTimeout yana harba idan motsin ya ƙare (1.3 s don tsabar kuɗi, 4.3 s don keke) kuma yana rubuta sakamakon zuwa yanayi. Yanayin tsabar kuɗi yana ci gaba da tarihin zaman har zuwa juyawa 24 tare da ƙidayar heads/tails. Masu amfani da prefers-reduced-motion a kunne suna tsallake motsi gaba ɗaya kuma suna ganin sakamakon nan take.
Kayan Aiki Masu Alaƙa
Mai Ƙirƙirar Lamba Bazuwar
Ƙirƙiri lambobi bazuwar a kowane zango, ƙirƙiri jerin lambobi na musamman, ko jefa dice. Yana amfani da bazuwar amintacce ta hanyar cryptography.
Mai Ƙirƙirar Ƙungiyoyi Bazuwar
Raba jerin sunaye zuwa ƙungiyoyi bazuwar masu daidaito — bisa adadin ƙungiyoyi ko girman ƙungiya. Gauraya bisa gaskiya ta hanyar cryptography, sake gauraya nan take.
Mai Zaɓar Launi da Kirkira Palette
Zaɓi launuka, canza tsakanin HEX/RGB/HSL, da kirkira palettes masu jituwa.