Star Wars tema retro arkadspel (3 / 9 steg)

Steg 3: Spelmekanik



Detta spel skulle suga om du inte kunde interagera med den. Om du inte kunde dö, om det var för lätt eller om det var repetitiva skulle du tröttnar snabbt och dumpa det. Jag kommer att lista spel element i ordning jag genomfört dem.

Processuella nivå generation:

Spelet kommer att generera terrängen i farten. Eftersom detta är en stor del, förtjänar det eget steg.

Knappen

Upptäcka knapp klick är enkel. Vänta tills du trycker på knappen, vänta på knappen utgåvan, fortsätta med koden. Men vad händer om du vill animera saker medan du väntar på knappen utgåvan? Lite svårare men inte ett problem.

bool buttonReady = 1;
buttonif (buttonReady) {
om (! digitalRead(buttonPin)) {
y =! y;
buttonReady = 0;
lcd.setCursor(x,y);
LCD.write(ship);
lcd.setCursor(x,!y);
LCD.write(' ');
}
LCD.Clear();
}
annat {
om (digitalRead(buttonPin)) {
buttonReady = 1;
}
}

Som ni kan se i koden ovan, gjorde jag det genom att lägga till en buttonReady variabel. Namngivning kan inte vara bäst men funktionen förblir oförändrad. Medan buttonReady är 1 (sant), väntar programmet på att du trycker på knappen. När den upptäcker du trycker på knappen, buttonReady växlar mellan stat till 0 (falskt) och programmet startar väntar på knappen utgåvan. På knappen utgåvan rymdskepp flyttar och knappen klar sätts tillbaka till 1. Detta sätt spelet kan köra medan knappen trycks.

Kollision:

Om du vill kontrollera om du träffar något, måste du kontrollera om ett objekt är på samma plats som du är. Samma sak gäller för detta. Se kod nedan för att se hur detta fungerar.

kollision detectionif(y) {//bottom rowif ((b >> 15-x) %2) {
gå till bom;
}
}
annat {//top rowif ((en >> 15-x) %2) {
gå till bom;
}
}

Som du ser detta ske med hjälp av bitshift och modulooperatorn. Detta är en del av min "optimera koden" minigame jag spelade genom programmering det hela här. Vad bitshift gör är att det skiftar bitar av variabel lämnade eller precis vid viss. Detta gör det lätt att se om det finns en 1 på viss position eller inte. Efter bitshifting modulo (& 2) returnerar division resten och om som är lika med 1, det var en 1 i ange position annars var det 0.

Om du inte får bitshift operatör (oroa dig inte du ska få det någon dag), kan du använda matrisfunktioner istället (din data variabler måste vara matriser och du kommer att behöva göra en funktion för att flytta data).

Scoring
Spelet är inte ett spel om det inte visar du värdering du uppnått. Men hur man sådan poängrekord? Av mängden hinder dodged! Men betyder det att en pint bör läggas till varje gång du klickar på en knapp och inte dö? Som skulle underlätta nivåer med många hinder i skilda köer i tidiga spel orättvist och användaren kan fuska genom att klicka flera gånger när spelet startar och det finns inga hinder... Lägga till en punkt för varje block reste utan att träffa något är ett bättre sätt att få spelare. Jag kunde faktiskt namn den "tillryggalagd sträcka" men "poäng" låter bättre.

Eftersom rymdskepp börjar vid position 4 och terräng är alla tomma spelet startar, spelare startar med negativa 12 poäng. Detta sätt kommer han att ha 0 poäng om han träffar det första hindret.

Skalning svårigheter

Men även scoring hinner du sticka med spelet om det är alltför lätt. Du bli uttråkad och sluta spela den. Som standard skärm speluppdateringar var 0,7 sekunder (stepTime variabel). Det är bra att börja med men blir tråkigt ganska snart. Självklart måste det finnas vissa skalning svårigheter genomföras. Jag har beslutat att göra det genom att snabba upp spelet - genom att sänka variabeln stepTime. På varje steg minskas det med belopp som svårigheter. Jag hittade den svårigheten mellan 1 och 3 fungerar bäst. Om du sätta den högre, blir för hårt mycket snabbt. Om du vill större utmaning, rekommenderar jag att stepTime variabel lägre och lämnar svårigheten låg. Som får du roliga fartfyllda spelet.

Vi behöver inte bekymra dig om att begränsa stepTime för att alltid vara större än 0 som spelaren inte kan möjligen gå långt när han har att fatta beslut i tionde sekund som även knapptryckning tar längre tid.

Se Steg
Relaterade Ämnen

Hur man gör isbitar för Star Wars tema, choklad, cookies och smör

detta instructable kommer att visa dig hur man gör Star Wars tema isbitar, choklad, kakor och smör. Ja Star Wars tema smör.Steg 1: vad du behöver formar av Star Wars objekt du vill göra dina skapelser av. Du kan få dem på Amazon.comFörsta steget är a...

Använd din gamla Star Wars figurer för att göra en cool Star Wars tema julgran

Om din på mig du förmodligen har några gamla Star Wars figurer från din barndom stashed bort några där. Tja varför inte dra dessa gamla siffror, damma av dem och göra något kreativt och roligt med dem. Gör din egen Star Wars tema julgran. Dess se til...

Grooms män manschettknapp och slips gåva som. (star wars tema)

Jag är gifta och jag och min fästman är massiva Star Wars fans så vi ville inkludera det i vårt bröllop men inte galen och har ett tema bröllop, så vi är även lite tips av star wars in i våra dagar.ett sätt vi är även det är genom de gåvor som vi ger...

Arduino summern Star Wars tema

Arduino summern Star Wars temaYouTube-videorDokument...

Q5 en Star Wars tema Astromech Driod

Så du är ett fan av Star Wars-universum och du vill bygga din egen representation av en arbetande Astomech Driod. Om du inte är berörda med noggrannhet men vill bara något som ser bra ut och fungerar då detta Instructable är för dig. Genom att söka g...

Arduino-Powered vägg julgran med Star Wars tema LED lampor

Detta är en perfekt DIY julgran för småhus, lägenheter eller ett kontor där du inte vill ha ett riktigt träd och vill ha lite julstämning.Du kan gå enkelt eller komplicerat med designen här men jag valde att gå ganska enkelt med några här redwood hyl...

Star Wars-tema bröllop majs hål spel.

Jag gifte mig i år och jag och min flickvän (nu fru) ville ha några roliga utomhus spel att ockupera gästerna medan vi är att ta foton och allt annat som lämnar gäster åt sitt öde.Vi ville ha spel som var annorlunda och sedan i England majs hål inte...

Star Wars tema: Stam-eller-Treat

Målade pumpor i droiderSteg 1: Skaffa två pumpor för BB-88Plocka ut två pumpor som kommer att travas ovanpå varandra välSteg 2: Anslut pumporSkär av stjälkarna - Använd en borr göra hål ovanpå större pumpa & i botten av den mindre. Använd kort dowel...

Anpassningsbara motoriserade Tree Topper med Star Wars stil

detta Instructable visar dig hur man gör en motoriserad tree topper för din julgran. Jag gjorde detta som en överraskning tidigt julklapp för min fru så hon kunde njuta av det genom större delen av December. Detta är något som kan anpassas till en st...

Vuxen Star Wars part

min man är alltid häftigt för mig, så jag använda sina födelsedagar för att visa honom hur fantastisk han är, i gengäld. Han är en Star Wars mutter och alltid har varit, så jag ville göra sin födelsedag minnesvärd sista November.Sammanfattningsvis gj...

STAR WARS NINTENDO Wii

detta är en kort instructable om hur jag sätt en Nintendo Wii fallet med fiber optic stjärnor och logotyp för en Star Wars tema Wii! Denna Wii är på rea nu på E-Bay, det kommer också att ha Star Wars the Force Unleashed -spel.Varning Mod på egen risk...

DIY Lego Orrery (Star Wars stil)

För alla Star Wars-fans eller de som är intresserade av en fysik projekt, är här en DIY Lego Orrery, en mekanisk modell av solsystemet. Orrery kommer att uppmärksamma några fysik begrepp som centripetalkraften och gravitationella rotation. Star Wars...

Star Wars Han & Leia bröllopstårta Topper

Jag fick idén att göra en Star Wars tema cake topper när en klient används min skulptur av Yoda för hennes bröllopstårta topper. Jag tycker det är kul att ha bröllop teman och för Star Wars fan par, detta är ett sätt att visa kraften till dina gäster...

Star Wars Death Star Popsicles

Hej, i detta instructable, vi kommer att fortsätta med Star Wars tema, senast instructable gjorde vi Star Wars Death Star Peanut Butter Cups ( i detta instructable gör vi Star Wars Death Star Popsicles. Så vi får verkligen stort värde ur våra Death S...

Star Wars Stencil Cookies

en av mina rumskamrater har aldrig sett Star Wars. ** cue gasp ** att fixa detta, min svit har varit att titta på en övergång från den ursprungliga trilogin varje lördag och ikväll avslutar vi vår saga med del VI. Jag ville göra något Star Wars tema...

DIY Star Wars Lightsaber part gynnar

Fredag, vaknar kraften som. Med avsnitt VII av Star Wars saga premiär på biograferna 18 kunde inte teamet på Grossistpartier parti vara mer spännande! För att fira denna kommande storfilm, laget har skapat ett DIY projekt som gör att du kan göra din...

Upp cykling LG lagerplatser i Star Wars Utility lagringsbehållare

leveranser:LG verktyg lagerplatser.Aerosol färgLastbil säng liner aerosolStencilerSteg 1: Star Wars lagerplatser från gamla LG lagringsbehållare Detta instructable visar dig hur du sätter begagnade LG lagringsbehållare till awesome Star Wars tema ver...

Star Wars serietidning bröllop knapphål.

När jag och min fru fick gift vi ville göra så mycket vi kunde själva, uppmanar, gåvor, dekorationer m.m. vi gjorde detta av många anledningar, en var att spara pengar och en annan var att vi ville ha en personlig touch för våra gäster.Vi beslutade a...

Light Sensor Star Wars kappa (Pop det som det är Hoth)

Detta är ett roligt projekt som använder en Arduino Lilypad tillsammans med en ljussensor och Summer att spela star wars tema när kragen på en Chewbacca kappa är vänt upp, och sedan stannar när kragen sätts tillbaka.Jag kommer att dela upp detta i 2...