Sisukord:

Lambapea kaardimäng esp8266 -ga: 4 sammu
Lambapea kaardimäng esp8266 -ga: 4 sammu

Video: Lambapea kaardimäng esp8266 -ga: 4 sammu

Video: Lambapea kaardimäng esp8266 -ga: 4 sammu
Video: Как ВЕРТАТЬ открытку как ПРОФЕССИОНАЛ!!🤯🤯 #шорты #урок 2024, Juuli
Anonim
Lambapea kaardimäng esp8266 -ga
Lambapea kaardimäng esp8266 -ga

Lambapea on kaardimäng, mida mu tädid ja onud perega koosviibimiste ajal mängiksid. See on trikk, mis võtab Euroopast pärit kaardimängu. Versioone on mitu, nii et minu versioon võib natuke erineda sellest, mida mängite. Minu rakendatud versioonis saate mängida 3, 4 või 5 mängijaga, kusjuures 5 on ideaalne mängijate arv. Mäng kasutab tavalisest 52 kaardipakist 32 kaarti.

Põhireeglid leiate siit:

5 -mängija mängu reeglite lühikokkuvõte; igale mängijale jagatakse 6 kaarti ja pimedatele kaks kaarti. Edasimüüjatele jäänud mängijale antakse esimene võimalus valida pime, seejärel järgmine mängija jne, kuni keegi valib pime või kuni kõigil mängijatel on valida. Kui keegi ei vali, algab mäng otsast peale ja jagatakse uued kaardid. Pimeda valijat nimetatakse korjajaks. Korjaja valib partneri, kutsudes ülikonda, kas Hearts, Clubs või Spades, kuid tal peab olema käes sama ülikonna kaart. Partner, kellel on kutsutud ülikonna äss, on partner. Mängijad peavad järgima esimese mängitud kaardi eeskuju, trump on ülikond. Partner peab ässa mängima, kui kutsutud ülikond esimest korda juhtimisel on. Valija ja partner peavad mängu võitmiseks saama 61 punkti. Mängijad, kes ei ole korjaja ega partner, moodustavad meeskonna ja nende punktid ühendatakse nende võitmiseks. Skoorimiseks vaadake ülaltoodud reeglite linki.

Kolme ja nelja mängijaga mängu puhul pole partnerit ning vastavalt jagatakse välja 10 või 8 kaarti.

Ma ei rakendanud leasteri mängu. Kui ükski mängija ei vali, võib mänguriba abil mängu jätkata. Leaster võitja on mängija, kes teeb vähemalt ühe triki ja kogub kõige vähem punkte.

Mängu arendamine:

Selle projekti jaoks sain inspiratsiooni soovist luua Sheepsheadi rakendus ja õppida ka jquery. Kaartide lohistamisel kasutasin ka dragula.js -i. Esp8266 lülitatakse AP -režiimi. Ühendamiseks vajate WiFi -seadet, mis saab ühenduse luua "Sheepshead" võrguga ja minna aadressile

See on minu esimene juhend, nii et oleksin tänulik igasuguse tagasiside eest. Püüan teie küsimustele vastata, kui saan.

Samm: riistvara ehitamine

Riistvara ehitamine
Riistvara ehitamine
Riistvara ehitamine
Riistvara ehitamine
Riistvara ehitamine
Riistvara ehitamine

Riistvara nõuded

Seda saab teha Wemos D1 Mini või esp8266-esp-07 või esp-12 abil.

Esp8266 ehitamine:

  • esp8266 (esp-07 või esp-12)
  • valge paigalduslaud esp8266 + pistikute jaoks
  • 6-kontaktiline pistik (valikuline)
  • LM317 pingeregulaator
  • (2) 10K oomi takisti
  • Takisti 390 oomi
  • 220 oomi takisti
  • 20 oomi takisti
  • (2) hetkelised nupud
  • 100n keraamiline kondensaator
  • 10uF elektrolüütkondensaator
  • 220uF elektrolüütkondensaator
  • 1N4002 diood (valikuline)
  • tünni pistik (kasutasin külgmist kinnitust ja joodeti 3 -kontaktilise isase pistiku külge)
  • Projekti kast
  • Toiteallikas

Kaasasin ExpressSCH- ja ExpressPCB -failid, mida ahela ehitamiseks kasutasin. Nagu pildilt näete, ei lisanud ma nuppe ega kasutanud J2 -pistikut (mida saab kasutada koos mooduliga FTDI232RL esp8266 programmeerimiseks). Kui soovite seda kasutada esp8266 programmeerijana, vajate nuppe ja J2 -pistikut. Tarkvara või andmete välgutamiseks peate seadme lähtestama (SW1), hoidke seda all, vajutades samal ajal nuppu (SW2), seejärel vabastage nupp (SW1) ja laadige kood üles.

Enne komponentide paigaldamist kontrollige vooluringi, testides iga ühendust. Veenduge, et pingeregulaator väljastab 3,3 volti ja kontrollige kõiki ühendusi. Kui te pole kindel, soovitan kasutada Wemos D1 mini, kuna jootmist pole vaja.

Samm 2: Tarkvara laadimine

Tarkvara laadimine
Tarkvara laadimine

Tarkvara

Lisasin selle projekti tarkvara. Ma annan iga klassi kohta lühikese selgituse ja milleks seda kasutatakse, kuid ma ei hakka üksikasjadesse laskuma. See mäng on tõestus kontseptsioonist, et kaardimängu saab teha esp8266 -ga. Mängul on mõned probleemid, mida ma pole veel välja töötanud. Näiteks kui kasutaja sisse logib ja ühendus katkeb, ei vabastata teda mängust ega saa mänguga uuesti ühendust luua. Ainus võimalus sellest on mängu lähtestamine ja otsast alustamine. Mäng on natuke aeglane ja mõnikord ei värskenda kaarte. Kasutaja saab brauserit värskendada, mis peaks kaarte õigesti kuvama. Kui kasutaja salvestab lingi oma avaekraanile (iPhone'i jaoks), pole värskendusnupp saadaval, mistõttu on värskendamine võimatu. Mõnikord on väikestel seadmetel raske kaarte pimedasse/pimedalt lohistada.

Card.h ja Card.ino Card klass

Sellesse klassi kuulub kaardiülikond, auaste, punkt ja millised kaardid on trump.

Deck.h ja Deck.ino Teki klass

See klass hoidis kaardipaki teavet. Sellel on meetod teki segamiseks ja tekilt kaartide saamiseks. Teki segamiseks kasutatakse juhuslikku seemet

Hand.h ja Hand.ino

See klass rakendab IGame liidest ja hoiab teavet iga mängija käe kohta. Kes on korjaja, partnerid ja edasimüüja. See hoiab käes, kelle kord on, kuidas nimetatakse ülikonda, mis on juhtiv ülikond, milline käenumber, mängijate arv, kes on võitja jne.

Player.h ja Player.ino Mängijate klass

Selles klassis on mängija andmed, näiteks mängija nimi, meeskonna punktid, kui mängija valis või möödus, ja kuvatakse mängijale teade.

IGame.h ja IGame.ino IGame liideseklass

Selles klassis on mänguvoo juhtimiseks pakid, kaardid ja mängijad.

Lambapea.ino

Hoiab seadistamise ja silmuse funktsiooni veebisaidi teenindamiseks.

login.html ja login.js failid

Need failid kontrollivad kasutaja sisselogimise veebisaidi lehe voogu

failid sheepshead.html ja sheepshead.js

Need failid kontrollivad veebisaidi lambapea mängu voogu.

Kaardipildid

hoiab iga kaardi pilti, kaasa arvatud kaardi tagakülg.

Siin on lühike selgitus tarkvara esp8266 -le laadimise kohta. Veebis on mitmeid näiteid, mis võivad seda üksikasjalikumalt selgitada. Nii laadisin tarkvara ja andmed Arduino IDE tarkvara abil.

  • Installige Arduino tarkvara ja esp8266 tahvlifailid, lisateavet leiate aadressilt
  • Kui kasutate Wemos D1 mini, määrake välgu suuruseks 4M (1M SPIFFS). Kui kasutate üldist esp8266 esp-07 või esp-12, määrake välgu suuruseks 1M (512 SPIFFS).
  • Võimalik, et peate Arduino tarkvarasse installima mõned täiendavad teegid.
  • SPIFF-i andmete installimiseks järgige seda linki
  • pakkige tarkvara Sheepshead lahti ja asetage oma arvutisse.
  • Käivitage Arduino IDE tarkvara ja avage projekt Sheepshead
  • Installige Sheepsheadi kood esp8266 seadmesse, klõpsates üleslaadimisnuppu. Kui te Wemos D1 Mini ei kasuta, peate võib -olla seadma välgurežiimi, klõpsates lähtestusnuppu (SW1), hoides seda all, samal ajal vajutades nuppu (SW2), seejärel vabastades nupu (SW1) ja laadides seejärel koodi üles.
  • Installige andmed esp8266 seadmesse, minnes menüü tööriistadesse ja klõpsates "ESP8266 Sketch Data Upload". Seadme välgurežiimi lülitamiseks peate järgima samu samme nagu eespool.
  • Kui tarkvara ja andmed on laaditud, olete mängu mängimiseks valmis.

3. samm: mängu mängimine

Mängu mängimine
Mängu mängimine
Mängu mängimine
Mängu mängimine
Mängu mängimine
Mängu mängimine

Ühendamiseks vajate WiFi -seadet, mis saab ühenduse luua "Sheepshead" võrguga, seejärel minge aadressile

  • Mängijad liituvad, sisestades oma nime ja klõpsates nuppu Liitu. Mäng eeldab, et teil on 5 mängijat, kui mitte, peab mängija valima mängijate arvu enne viimase mängijaga liitumist.
  • Kui viimane mängija liitub, jagatakse kaardid ja mäng algab, kui mängija klõpsab nuppu Start.
  • Mäng ei lase mängijal mängida kehtetut kaarti ega mängida kordamööda.
  • Kui kaardil klõpsatakse, suureneb see, et see oleks paremini nähtav. Kui klõpsate teist korda, mängitakse kaarti.
  • Mängijate nimi on esile tõstetud valgete tähtedega.
  • Järgmisena mängival mängijal on tema nime ja kaardi ümber punane kast.
  • Mäng algab sellega, et lubate mängijal valida pime või söödu. Kui mängija valib ruloo, saab ta lohistada kaardid pimedalt ja sealt kätte. Kui valijal on soovitud kaardid, peavad nad rippmenüüst valima väljavalitud ülikonna.
  • Mäng kinnitab, et neil on kutsutud ülikonna jaoks sobiv kaart.
  • Mäng algab siis, kui esimene mängija mängib esimese kaardi, iga mängija mängib ühe kaardi ja kuvatakse käe võitja. Punktid arvutatakse ja kuvatakse iga mängija/meeskonna kohta.
  • Käe võitja mängib esimese kaardi ja iga mängija ühe kaardi.
  • Mäng jätkub seni, kuni kõik kaardid on mängitud
  • Võitja selgub.
  • Diileriks saab järgmine inimene ja algab uus mäng.

4. samm: järeldus

See on minu esimene juhendatav ja tervitan teie tagasisidet. Nagu ma ütlesin, on see kontseptsiooni tõend, et kaardimängu saab teha esp8266 seadmes. Sellel on mõned probleemid, kuid seda saab mängida. Ootan teie kommentaare ja ettepanekuid.

Soovitan: