1. Komponente hardvera:
* zuji:
* Jednostavni zujanice: Za svakog igrača možete koristiti osnovne gumbe. Oni su jeftini i lako ih je pronaći.
* Elektroničke zujanice: Za realniji osjećaj, možete koristiti elektroničke zujalice (poput onih koje se koriste u emisijama igara). Za to će trebati malo više ožičenja i programiranja.
* Mikrokontroler:
* Arduino: Popularni izbor za njegovu jednostavnu upotrebu i fleksibilnost programiranja. Možete koristiti Arduino Uno, Nano ili druge prikladne ploče.
* Raspberry Pi: Snažnija opcija s naprednijim značajkama. Može podnijeti složeniju logiku, pa čak i potencijalno pokrenuti grafičko sučelje.
* zaslon (neobavezno):
* LCD zaslon: Za prikaz pitanja, odgovora na izbor i rezultate igrača.
* Monitor računala: Možete koristiti monitor računala za vizualno prikaz.
* zvučnik (neobavezno): Za reprodukciju zvučnih efekata.
* Napajanje:
* Za napajanje sustava bit će potreban zidni adapter ili baterijski paket.
* žice skakača: Za povezivanje različitih komponenti.
* ploča: (Neobavezno) za prototipiranje i testiranje.
2. Softverske komponente:
* Programski jezik:
* arduino ide: Ako koristite Arduino.
* Python: Ako koristite Raspberry Pi.
* Banka pitanja:
* Trebat će vam zbirka pitanja i odgovora za igru. Možete stvoriti vlastite ili pronaći unaprijed napravljene setove na mreži. Ova pitanja možete pohraniti u tekstualnu datoteku, CSV datoteku ili bazu podataka.
* logika i tok igre:
* Morat ćete napisati kôd da biste obradili:
* Prikazivanje pitanja i odabir odgovora.
* Otkrivanje preša za zujanje.
* Određivanje točnog odgovora.
* Dodjeljivanje bodova ili kazne.
* Ocjenjivanje igrača za praćenje.
* Prelazak na sljedeće pitanje.
* Završavajući igru.
3. Koraci za izgradnju:
1. Ožičenje zujanja:
* Spojite svaki zujanje na digitalni ulazni pin na mikrokontroleru.
* Upotrijebite otpornik za povlačenje na svakom ulazu kako biste osigurali da je signal visok kada zujanje nije pritisnut.
2. Postavljanje softvera:
* Instalirajte Arduino IDE ili Python okruženje.
* Napišite kôd za čitanje zujanja.
* Postavite funkciju za provjeru pritiska na gumb.
* Uključite banku pitanja i logiku za određivanje točnog odgovora.
* Stvorite funkcije za prikaz pitanja, odgovora i rezultata.
3. Programiranje logike igre:
* Postavite glavnu petlju za pokretanje igre.
* Prikažite pitanje.
* Pričekajte da igrač pritisne njihov zujanje.
* Provjerite je li odgovor točan.
* Nagradni bodovi ili kažnjavati igrača.
* Pređite na sljedeće pitanje.
4. zaslon (neobavezno):
* Ako koristite LCD zaslon, napišite kôd za prikaz pitanja, odgovora i rezultata.
* Ako koristite monitor računala, možete koristiti knjižnicu grafičkog korisničkog sučelja (GUI) poput Tkinter (Python) da biste stvorili vizualno privlačniji zaslon.
5. Zvučni efekti (neobavezno):
* Uključite kôd za reprodukciju zvučnih efekata pomoću zvučnika.
* Možete koristiti jednostavne zvučne signale za ispravne i pogrešne odgovore ili složenije zvučne znakove.
Primjer koda (Arduino):
`` `Arduino
// zujalice
const int buzzerpin1 =2;
const int buzzerpin2 =3;
const int buzzerpin3 =4;
const int buzzerpin4 =5;
// Definirajte nizove pitanja i odgovora
String pitanja [5] ={"Pitanje 1?", "Pitanje 2?", "Pitanje 3?", "Pitanje 4?", "Pitanje 5?"};
String odgovori [5] ={"Odgovor 1", "Odgovor 2", "Odgovor 3", "Odgovor 4", "Odgovor 5"};
// Rezultati igrača
int player1score =0;
int player2score =0;
int player3score =0;
int player4score =0;
void setUp () {
// Postavite igle za zujanje kao ulaze s otpornicima
PINMODE (BUZZERPIN1, input_pullup);
PINMODE (BUZZERPIN2, input_pullup);
pinmode (buzserpin3, input_pullup);
PINMODE (BUZZERPIN4, input_pullup);
Serial.begin (9600); // za uklanjanje pogrešaka
}
void loop () {
// Provjerite je li pritisnut bilo koji zujanje
if (digitalRear (buzserpin1) ==nisko) {
// Igrač 1 pritisnuo zujanje
CHONKANSWER (1);
} else if (digitalRear (buzserpin2) ==nisko) {
// igrač 2 pritisnuo zujanje
CHONKANSWER (2);
} else if (digitalRear (buzserpin3) ==nisko) {
// igrač 3 pritisnuo zujanje
CHONKANSWER (3);
} else if (digitalRear (buzserpin4) ==nisko) {
// Igrač 4 pritisnuo zujanje
CHONKANSWER (4);
}
}
void checkanswer (int playernumber) {
// ... vaša logika za određivanje točnog odgovora i dodjele bodova ili kazne
}
`` `` ``
Dodatni savjeti:
* Počnite jednostavno: Započnite s osnovnom verzijom igre i postupno dodajte više značajki jer postajete ugodnije.
* Modularni dizajn: Prekinite svoj kôd na manje, upravljive funkcije kako biste olakšali razumijevanje i održavanje.
* Koristite komentare: Jasno dokumentirajte svoj kôd s komentarima kako biste objasnili što svaki odjeljak radi.
* Otklanjanje pogrešaka: Upotrijebite serijski monitor (ako je primjenjivo) ili za uklanjanje pogrešaka kako biste pronašli i ispravili pogreške u svom kodu.
* Prvo sigurnost: Osigurajte da je vaše ožičenje sigurno i da razumijete kako sigurno koristiti svoje komponente.
Javite mi ako imate još pitanja o određenim komponentama ili tehnikama programiranja koje želite koristiti. Zabavite se izgradnju svoje igre "Tko želi biti milijunaš"!