Съдържание:

Игра на карти с овча глава с Esp8266: 4 стъпки
Игра на карти с овча глава с Esp8266: 4 стъпки

Видео: Игра на карти с овча глава с Esp8266: 4 стъпки

Видео: Игра на карти с овча глава с Esp8266: 4 стъпки
Видео: Часть 3. Настраиваем PID контроллер. 2024, Юли
Anonim
Игра на карти Sheepshead с Esp8266
Игра на карти Sheepshead с Esp8266

Sheepshead е игра на карти, която моите лели и чичо биха играли по време на семейни събирания. Това е трик с картовата игра, произхождаща от Европа. Има няколко версии, така че моята версия може да е малко по -различна от тази, която играете. Във версията, която въведох, можете да играете с 3, 4 или 5 играчи, като 5 са идеалният брой играчи. Играта използва 32 карти от стандартно тесте с 52 карти.

Основните правила могат да бъдат намерени тук:

Кратко обобщение на правилата за игра за 5 играчи; на всеки играч се раздават 6 карти и две карти се раздават на слепите. Играчът на левите дилъри получава първия шанс да вземе блайнд, след това следващият играч и т.н., докато някой не вземе блайнда или докато всички играчи имат възможност за избор. Ако никой не избере играта започва отначало и се раздават нови карти. Човекът, който избира щората, се нарича берач. Берачът избира партньор, като извиква костюм, или сърца, клубове или пики, но трябва да има карта от същата боя в ръката си. Играчът, който притежава асо от извиканата боя, е партньор. Играчите трябва да последват примера на първата играна карта, коз е костюм. Партньорът трябва да изиграе Аса, когато извиканата боя е водеща за първи път. Берачът и партньорът трябва да получат 61 точки, за да спечелят играта. Играчите, които не са берачът или партньорът, образуват отбор и точките им се обединяват, за да ги победят. Вижте връзката с правилата по -горе за точкуване.

За игра с 3 и 4 играчи няма партньор и се раздават съответно 10 или 8 карти.

Не прилагах игра на по -лест. Когато никой от играчите не избере играта, играта може да продължи по -скоро. Победителят е по -малкият играч, който направи поне един трик и отбележи най -малкото точки.

Разработка на играта:

Моето вдъхновение за този проект дойде от желанието да създам приложение 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 Ohm резистор
  • Резистор 390 ома
  • Резистор 220 ома
  • Резистор 20 ома
  • (2) моментни бутони
  • 100n керамичен кондензатор
  • 10uF електролитен кондензатор
  • 220uF електролитен кондензатор
  • 1N4002 диод (по избор)
  • съединител на барел (използвах страничен монтаж и запоен към 3 -пинов мъжки конектор)
  • Проектна кутия
  • Захранване

Включих файловете ExpressSCH и ExpressPCB, които използвах за изграждане на веригата. Както можете да видите от снимката, не добавих бутоните или използвах конектора J2 (който може да се използва с модул FTDI232RL за програмиране на esp8266). Ако искате да използвате това като програмист за esp8266, ще ви трябват бутоните и конектора J2. За да мигате софтуер или данни, ще трябва да нулирате устройството (SW1), като го държите натиснато, докато натискате бутона (SW2), след това освобождавате бутона (SW1), след което качвате кода.

Преди да поставите компоненти, проверете веригата, като тествате всяка връзка. Проверете дали регулаторът на напрежението извежда 3.3 волта и проверете отново всички връзки. Ако не сте сигурни, препоръчвам да използвате Wemos D1 mini, тъй като не се изисква запояване.

Стъпка 2: Зареждане на софтуера

Зареждане на софтуера
Зареждане на софтуера

Софтуер

Включих софтуера за този проект. Ще дам кратко обяснение за всеки клас и за какво се използва, но няма да навлизам в подробности. Тази игра е доказателство за концепцията, че игра на карти може да се направи на esp8266. Играта има няколко проблема, които все още не съм решил. Например, когато потребител влезе и загуби връзка, той не се освобождава от играта и не може да се свърже отново с играта. Единственият начин да заобиколите това е да рестартирате играта и да започнете отначало. Играта е малко бавна и понякога не опреснява картите. Потребителят може да опресни браузъра, който трябва да показва картите правилно. Ако потребителят запази връзката на началния си екран (за iPhone), бутонът за опресняване не е наличен, което прави невъзможно опресняването. Понякога е трудно да влачите и пускате карти към/от щората на малки устройства.

Card.h и Card.ino Клас карти

Този клас притежава картите, ранг, точка и кои карти са коз.

Deck.h и Deck.ino Deck клас

Този клас съдържа информация за тестето за карти. Той има метод за разбъркване на тестето и за получаване на карти от тестето. Той използва произволно семе за разбъркване на колодата

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, вижте https://github.com/esp8266/Arduino за повече информация.
  • Ако използвате Wemos D1 mini, задайте размера на светкавицата на 4M (1M SPIFFS). Ако използвате общ esp8266 esp-07 или esp-12, задайте размера на светкавицата на 1M (512 SPIFFS).
  • Може да се наложи да инсталирате някои допълнителни библиотеки в софтуера Arduino.
  • За да инсталирате SPIFF данните, следвайте тази връзка
  • разархивирайте софтуера Sheepshead и го поставете на компютъра си.
  • Стартирайте софтуера IDE на Arduino и отворете проекта Sheepshead
  • Инсталирайте кода на Sheepshead на устройството esp8266, като щракнете върху бутона за качване. Ако не използвате Wemos D1 Mini, може да се наложи да поставите устройството във флаш режим, като щракнете върху бутона за нулиране (SW1), задръжте го натиснато, докато натиснете бутона (SW2), след това освободете бутона (SW1), след което качете кода.
  • Инсталирайте данните на устройството esp8266, като отидете в инструментите в менюто и щракнете върху „ESP8266 Sketch Data Upload“. Ще трябва да изпълните същите стъпки, както по -горе, за да поставите устройството във флаш режим.
  • След като софтуерът и данните са заредени, вие сте готови да играете играта.

Стъпка 3: Игра на играта

Игра на играта
Игра на играта
Игра на играта
Игра на играта
Игра на играта
Игра на играта

За да се свържете, имате нужда от WiFi устройство, което може да се свърже с мрежата "Sheepshead", след което отидете на https://191.168.1.1 уеб сайт.

  • Играчите се присъединяват, като въвеждат името си и натискат Присъедини се. Играта предполага, че ще имате 5 играчи, ако не, играчът трябва да избере броя на играчите, преди последният играч да се присъедини към играта.
  • След като последният играч се присъедини, картите се раздават и играта започва, когато играчът натисне бутона Старт.
  • Играта няма да позволи на играч да играе невалидна карта или да играе извън хода.
  • Когато се кликне върху карта, тя ще се увеличи по размер, за да стане по -видима. Ако щракнете за втори път, картата ще се играе.
  • Името на играчите е подчертано с бели букви.
  • Играчът, който следва да играе, ще има червена кутия около името и картата си.
  • Играта започва, като позволява на играча да избере блайнда или да подаде. Когато играч избира блайнда, той може да плъзга и пуска картите от блайнда към/от там ръка. След като берачът получи желаните от тях карти, той трябва да избере повикана боя от падащото меню.
  • Играта ще потвърди, че те имат подходяща карта за призованата боя.
  • Играта започва, когато първият играч играе първата карта, всеки играч играе по една карта и се показва победителят за ръката. Точките се изчисляват и показват за всеки играч/отбор.
  • Победителят от ръката играе първата карта и всеки играч играе по една карта.
  • Играта продължава, докато не се изиграят всички карти
  • Определя се победител.
  • Следващият човек става дилър и започва нова игра.

Стъпка 4: Заключение

Това е първият ми Instructable и приветствам вашите отзиви. Както казах, това е доказателство за концепцията, че игра на карти може да се направи на устройство esp8266. Има няколко проблема, но може да се играе. Очаквам вашите коментари и предложения.

Препоръчано: