Բովանդակություն:

Sheepshead քարտային խաղ Esp8266: 4 քայլով
Sheepshead քարտային խաղ Esp8266: 4 քայլով

Video: Sheepshead քարտային խաղ Esp8266: 4 քայլով

Video: Sheepshead քարտային խաղ Esp8266: 4 քայլով
Video: Ինչու հենց հիմա որոշվեց փակել Մալաթիա տոնավաճառը. ինչ միտումներ է տեսնում տնօրենը 2024, Նոյեմբեր
Anonim
Ոչխարների քարտային խաղ Esp8266- ի հետ
Ոչխարների քարտային խաղ Esp8266- ի հետ

Sheepshead- ը քարտային խաղ է, որը մորաքույրներս ու հորեղբայրներս խաղում էին ընտանեկան հավաքույթների ժամանակ: Դա խաբեություն է ՝ խաղաթղթե խաղ, որը ծագել է Եվրոպայից: Կան մի քանի տարբերակ, այնպես որ իմ տարբերակը կարող է մի փոքր տարբերվել ձեր խաղացածից: Իմ իրականացրած տարբերակում կարող եք խաղալ 3, 4 կամ 5 խաղացողների հետ, որոնցից 5 -ը խաղացողների իդեալական թիվն է: Խաղը օգտագործում է 32 քարտ ՝ ստանդարտ 52 քարտերի տախտակամածից:

Հիմնական կանոնները կարելի է գտնել այստեղ ՝

5 խաղացող խաղի կանոնների հակիրճ ամփոփում; յուրաքանչյուր խաղացողի բաժանվում է 6 քարտ, իսկ երկու քարտը բաժանվում է կույրերի: Ձախ դիլերների խաղացողին տրվում է կույրը ընտրելու առաջին հնարավորությունը, այնուհետև հաջորդ խաղացողը և այլն, մինչև որ ինչ -որ մեկը կույրը ընտրի կամ մինչև բոլոր խաղացողները ընտրության հնարավորություն ունենան: Եթե ոչ ոք չի ընտրում, խաղը սկսվում է նորից, և նոր քարտեր են բաժանվում: Կույրը ընտրողը կոչվում է ընտրող: Ընտրողը ընտրում է զուգընկերոջը ՝ կանչելով կոստյում ՝ Hearts, Clubs կամ Spades, բայց պետք է ունենա նույն կոստյումի քարտը իր ձեռքում: Այն խաղացողը, ում մոտ կանչված կոստյումի Ace- ն է, գործընկերն է: Խաղացողները պետք է հետևեն առաջին խաղարկված քարտի օրինակին, հաղթաթուղթը կոստյում է: Գործընկերը պետք է խաղա Ace- ի հետ, երբ կանչված կոստյումը առաջին անգամ է գլխավորում: Խաղը հաղթելու համար ընտրողը և գործընկերը պետք է վաստակեն 61 միավոր: Խաղացողները, ովքեր ընտրող կամ գործընկեր չեն, կազմում են թիմ և նրանց միավորները միավորվում են `նրանց հաղթելու համար: Գնահատման համար տես վերը նշված կանոնների հղումը:

3 և 4 խաղացողների խաղի համար գործընկեր չկա, և համապատասխանաբար 10 կամ 8 քարտ բաժանվում է:

Ես leaster խաղ չեմ իրականացրել: Երբ ոչ մի խաղացող չի ընտրում, խաղը կարող է շարունակվել ավելի արագ: Leaster- ի հաղթողը այն խաղացողն է, ով կատարում է առնվազն մեկ հնարք և վաստակում ամենաքիչ միավորը:

Խաղի մշակում

Այս նախագծի իմ ոգեշնչումը եկավ Sheepshead հավելված ստեղծելու և նաև jquery սովորելու ցանկությունից: Ես նաև օգտագործել եմ dragula.js քարտերի քաշքշոցը բաց թողնելու համար: Esp8266- ը դրվում է AP ռեժիմի վրա: Միանալու համար ձեզ անհրաժեշտ է WiFi սարք, որը կարող է միանալ «Sheepshead» ցանցին և գնալ https://191.168.1.1 վեբ կայք:

Սա իմ առաջին հրահանգներն են, այնպես որ ես կգնահատեի ցանկացած կարծիք: Երբ փորձեմ, կփորձեմ պատասխանել ձեր հարցերին:

Քայլ 1: Սարքաշարի կառուցում

Սարքաշարի կառուցում
Սարքաշարի կառուցում
Սարքաշարի կառուցում
Սարքաշարի կառուցում
Սարքաշարի կառուցում
Սարքաշարի կառուցում

Սարքավորման պահանջներ

Դա կարելի է պատրաստել Wemos D1 Mini- ով կամ esp8266-esp-07 կամ esp-12- ով:

Esp8266 կառուցում:

  • esp8266 (esp-07 կամ esp-12)
  • սպիտակ ամրացման տախտակ esp8266 + միակցիչների համար
  • 6-պին կանացի միակցիչ (ըստ ցանկության)
  • LM317 լարման կարգավորիչ
  • (2) 10K Օմ դիմադրություն
  • 390 Օմ դիմադրություն
  • 220 Օմ դիմադրություն
  • 20 Օմ դիմադրություն
  • (2) վայրկենական սեղմման կոճակներ
  • 100n կերամիկական կոնդենսատոր
  • 10uF էլեկտրոլիտիկ կոնդենսատոր
  • 220uF էլեկտրոլիտիկ կոնդենսատոր
  • 1N4002 դիոդ (ըստ ցանկության)
  • տակառի միակցիչ (ես օգտագործեցի կողային ամրացում և զոդվեցի 3 փին արական միակցիչին)
  • Նախագծի տուփ
  • Սնուցման աղբյուր

Ես ներառեցի ExpressSCH և ExpressPCB ֆայլերը, որոնք ես օգտագործում էի սխեման կառուցելու համար: Ինչպես տեսնում եք նկարից, ես չեմ ավելացրել կոճակները կամ օգտագործել J2 միակցիչը (որը կարող է օգտագործվել FTDI232RL մոդուլով esp8266- ը ծրագրավորելու համար): Եթե ցանկանում եք օգտագործել սա որպես esp8266 ծրագրավորող, ձեզ հարկավոր են կոճակները և J2 միակցիչը: Softwareրագրային ապահովման կամ տվյալների բռնկման համար անհրաժեշտ կլինի սարքը (SW1) վերակայել (սեղմել) (SW2) կոճակը սեղմելիս, այնուհետև ազատել (SW1) կոճակը, ապա վերբեռնել կոդը:

Նախքան որևէ բաղադրիչ տեղադրելը, ստուգեք սխեման `փորձարկելով յուրաքանչյուր միացում: Ստուգեք, որ լարման կարգավորիչը թողնում է 3.3 վոլտ և կրկնակի ստուգեք բոլոր միացումները: Եթե վստահ չեք, ապա խորհուրդ եմ տալիս օգտագործել Wemos D1 mini- ն, քանի որ զոդում չի պահանջվում:

Քայլ 2: Loրագրակազմի բեռնում

Adingրագրակազմի բեռնում
Adingրագրակազմի բեռնում

Ծրագրային ապահովում

Ես ներառեցի այս ծրագրի ծրագրակազմը: Ես կտրամադրեմ յուրաքանչյուր դասի հակիրճ բացատրությունը և այն, թե ինչ նպատակով է այն օգտագործվում, բայց չեմ պատրաստվում մանրամասնել: Այս խաղը այն հասկացության ապացույցն է, որ քարտային խաղ կարելի է պատրաստել esp8266- ի վրա: Խաղը մի քանի խնդիր ունի, որոնք ես դեռ չեմ մշակել: Օրինակ, երբ օգտվողը մուտք է գործում և կորցնում կապը, նրանք դուրս չեն գալիս խաղից և չեն կարող նորից միանալ խաղին: Սրա միակ ճանապարհը խաղը վերագործարկելն ու նորից սկսելն է: Խաղը մի փոքր դանդաղ է ընթանում և երբեմն չի թարմացնում քարտերը: Օգտվողը կարող է թարմացնել դիտարկիչը, որը պետք է քարտերը ճիշտ ցուցադրի: Եթե օգտագործողը պահում է հղումը իր հիմնական էկրանին (iPhone- ի համար), ապա թարմացման կոճակը հասանելի չէ, ինչը անհնարին է դարձնում թարմացումը: Երբեմն դժվար է քարտերը քարշ տալ և գցել կույրերին փոքր սարքերի վրա:

Card.h և Card.ino Քարտի դաս

Այս դասը կրում է քարտի կոստյումը, աստիճանը, միավորը և որ քարտերն են հաղթաթուղթը:

Deck.h և Deck.ino տախտակամած դաս

Այս դասը պահեց քարտի տախտակամածի տվյալները: Այն ունի տախտակամածը խառնելու և տախտակամածից քարտեր ստանալու մեթոդ: Այն օգտագործում է պատահական սերմ ՝ տախտակամածը խառնելու համար

Hand.h և Hand.ino

Այս դասը իրականացնում է IGame ինտերֆեյսը և տեղեկատվություն է պահում յուրաքանչյուր խաղացողի ձեռքի մասին: Ովքեր են ընտրողը, գործընկերները և դիլերը: Կարևոր է, թե ում հերթն է, ինչ է կոչվում կոստյում, որն է առաջատար կոստյումը, ձեռքի համարը, խաղացողների թիվը, ով է հաղթողը և այլն:

Player.h և Player.ino Խաղացողների դաս

Այս դասը պարունակում է Խաղացողի մասին տեղեկություններ, ինչպիսիք են խաղացողի անունը, թիմի միավորները, եթե խաղացողը ընտրել կամ փոխանցել է և ցուցադրել հաղորդագրություն խաղացողին:

IGame.h և IGame.ino IGame ինտերֆեյսի դաս:

Այս դասը անցկացնում է տախտակամած, քարտ և խաղացող դասեր ՝ խաղի ընթացքը վերահսկելու համար:

Sheepshead.ino

Պահում է տեղադրման և հանգույցի գործառույթը ՝ վեբ կայքը սպասարկելու համար:

login.html և login.js ֆայլերը

Այս ֆայլերը վերահսկում են օգտվողի մուտքի վեբ կայքի հոսքը

sheepshead.html և sheepshead.js ֆայլերը

Այս ֆայլերը վերահսկում են վեբ կայքի ոչխարների խաղի ընթացքը:

Քարտի պատկերներ

պահում է յուրաքանչյուր քարտի պատկերը, ներառյալ քարտի հետևի մասը:

Ահա համառոտ բացատրություն `ծրագրակազմը esp8266- ի վրա բեռնելու համար: Համացանցում կան մի քանի օրինակներ, որոնք կարող են դա ավելի մանրամասն բացատրել: Այսպես ես բեռնեցի ծրագրակազմը և տվյալները ՝ օգտագործելով Arduino IDE ծրագրակազմը:

  • Տեղադրեք Arduino ծրագիրը և esp8266 տախտակների ֆայլերը, լրացուցիչ տեղեկությունների համար տես
  • Եթե օգտագործում եք Wemos D1 մինի, Flash- ի չափը սահմանեք 4M (1M SPIFFS): Եթե օգտագործում եք ընդհանուր esp8266 esp-07 կամ esp-12, Flash- ի չափը սահմանեք 1 Մ (512 SPIFFS):
  • Հնարավոր է, որ անհրաժեշտ լինի որոշ լրացուցիչ գրադարաններ տեղադրել Arduino ծրագրաշարի մեջ:
  • SPIFF- ի տվյալները տեղադրելու համար հետևեք այս հղմանը
  • բացեք Sheepshead ծրագրակազմը և տեղադրեք ձեր համակարգչի վրա:
  • Գործարկեք Arduino IDE ծրագիրը և բացեք Sheepshead նախագիծը
  • Տեղադրեք Sheepshead ծածկագիրը esp8266 սարքի վրա ՝ կտտացնելով բեռնման կոճակին: Եթե դուք չեք օգտագործում Wemos D1 Mini- ն, գուցե անհրաժեշտ լինի սարքը տեղադրել ֆլեշ ռեժիմում ՝ սեղմելով վերակայման կոճակը (SW1), սեղմելով այն (SW2) կոճակին, այնուհետև ազատելով (SW1) կոճակը, ապա վերբեռնեք ծածկագիրը:
  • Տեղադրեք տվյալները esp8266 սարքի վրա ՝ ընտրացանկի գործիքներ գնալով և կտտացնելով «ESP8266 Էսքիզ տվյալների վերբեռնում»: Սարքը ֆլեշ ռեժիմի մեջ դնելու համար հարկավոր է կատարել նույն քայլերը, ինչ վերևում:
  • Theրագրակազմի և տվյալների բեռնման պահից դուք պատրաստ եք խաղալ խաղը:

Քայլ 3: Խաղացեք խաղը

Խաղալ խաղը
Խաղալ խաղը
Խաղալ խաղը
Խաղալ խաղը
Խաղալ խաղը
Խաղալ խաղը

Միանալու համար ձեզ անհրաժեշտ է WiFi սարք, որը կարող է միանալ «Sheepshead» ցանցին, ապա անցեք https://191.168.1.1 վեբ կայք:

  • Խաղացողները միանում են `մուտքագրելով իրենց անունը և կտտացնելով Միանալ: Խաղը ենթադրում է, որ դուք կունենաք 5 խաղացող, եթե ոչ խաղացողը պետք է ընտրի խաղացողների թիվը մինչև վերջին խաղացողի խաղին միանալը:
  • Երբ վերջին խաղացողը միանա, քարտերը բաժանվում են, և խաղը սկսվում է, երբ խաղացողը կտտացնում է «Սկսել» կոճակին:
  • Խաղը թույլ չի տա խաղացողին խաղալ անվավեր քարտ կամ խաղալ իր հերթին:
  • Երբ քարտը սեղմվում է, այն մեծանում է, որպեսզի ավելի տեսանելի լինի: Եթե երկրորդ անգամ սեղմեք, քարտը կխաղարկվի:
  • Խաղացողների անունն ընդգծված է սպիտակ տառերով:
  • Այն խաղացողը, ով պետք է խաղա հաջորդը, կունենա կարմիր տուփ ՝ իրենց անունով և քարտով:
  • Խաղը սկսվում է ՝ թույլ տալով խաղացողին ընտրել կույրը կամ փոխանցում կատարել: Երբ խաղացողը ընտրում է կույրը, նա կարող է քարտերը քաշել և գցել կույրից այնտեղից/այնտեղից: Երբ ընտրողն ունի իր ուզած քարտերը, նրանք պետք է ներքևից ընտրեն կոչված կոստյում:
  • Խաղը կհաստատի, որ նրանք ունեն համապատասխան քարտ `կոչված կոստյումի համար:
  • Խաղը սկսվում է, երբ առաջին խաղացողը խաղում է առաջին քարտը, յուրաքանչյուր խաղացող խաղում է մեկ քարտ և ցուցադրվում է ձեռքի հաղթողը: Միավորները հաշվարկվում և ցուցադրվում են յուրաքանչյուր խաղացողի/թիմի համար:
  • Ձեռքի հաղթողը խաղում է առաջին քարտը, և յուրաքանչյուր խաղացող խաղում է մեկ քարտ:
  • Խաղը շարունակվում է մինչև բոլոր խաղաթղթերը խաղարկվեն
  • Հաղթողը որոշվում է:
  • Հաջորդ մարդը դառնում է դիլեր և սկսվում է նոր խաղ:

Քայլ 4: Եզրակացություն

Սա իմ առաջին հրահանգն է, և ես ողջունում եմ ձեր կարծիքը: Ինչպես ասացի, սա ապացույց է այն հասկացության վրա, որ քարտային խաղ կարելի է պատրաստել esp8266 սարքի վրա: Այն ունի մի քանի խնդիր, բայց խաղարկելի է: Անհամբեր սպասում եմ ձեր մեկնաբանություններին և առաջարկներին:

Խորհուրդ ենք տալիս: