Hjem Personlig finansiering Hvordan man opretter brugerinteraktion i dit HTML5-spil - dummies

Hvordan man opretter brugerinteraktion i dit HTML5-spil - dummies

Indholdsfortegnelse:

Video: Android Developer Story: Outfit7 — Building an entertainment company with Google 2025

Video: Android Developer Story: Outfit7 — Building an entertainment company with Google 2025
Anonim

Den største forskel mellem et HTML5-spil og en animation er brugerinteraktion. Hvis du vil gøre det til et spil, skal du bruge brugeren til at blive involveret. Og her er hvordan man gør det.

Her er koden:

bil. html var scene; var bil; funktion init () {scene = ny scene (); bil = ny Sprite (scene, "bil. png", 50, 30); bil. setAngle (270); bil. setSpeed ​​(0); scene. start ();} // end init funktion opdatering () {scene. klar(); // tasterne hvis (keysDown [K_LEFT]) { bil. changeAngleBy (-5); } // ende hvis hvis (keysDown [K_RIGHT]) { bil. changeAngleBy (5); } // ende hvis hvis (keysDown [K_UP]) { bil. changeSpeedBy (1); } // ende hvis hvis (keysDown [K_DOWN]) { bil. changeSpeedBy (-1); } // ende hvis bil. opdatering ();} // slut opdatering

Kør bilen!

Sådan bruger du tastaturet til dit spil

På en eller anden måde skal brugeren interagere med siden. Tastaturet er et af de nemmeste inputelementer, der skal bruges. simpleGame giver et par måder at kontrollere tastaturet på, men den mest kraftfulde teknik bruger en særlig variabel kaldet keysDown. Sådan fungerer det:

  • keysDown er et globalt array. Denne variabel oprettes automatisk, når du bygger en scene. Det er en række boolske værdier - det betyder, at hvert element kun kan være sandt eller kun falsk.

  • Der er en konstant defineret for hver nøgle. Hver tast på standardtastaturet har en speciel konstant, der allerede er defineret. For eksempel repræsenterer K_A A-tasten, og K_B repræsenterer B-tasten.

  • keysDown fortæller status for hver nøgle. Hvis A-tasten for øjeblikket trykkes, vil tasterne Ned [A] indeholde værdien ægte. Hvis A-tasten ikke trykkes, vil tasterne Ned [A] indeholde værdien falsk.

  • Du kan bestemme den aktuelle status for en nøgle. Bare tjek tasterneDown [] array for at bestemme den aktuelle status for en hvilken som helst tast.

  • Du kan have flere nøgler nede på én gang. Det primære formål med denne teknik er at tillade, at flere taster trykkes på en gang. Ved normal beregning er det usædvanligt at have mere end en nøgle ad gangen. I spil er det meget almindeligt at trykke mere end en nøgle ad gangen, så du har brug for en mekanisme, som kan understøtte denne forventning.

Sådan flytter du spillets sprite

I hovedsagen har en sprite en position, som styres af X- og Y-egenskaber. Hvis du husker fra matematikklasse, repræsenterer X vandrette værdier, og Y er for lodret placering. Oprindelse (0, 0) er øverste venstre hjørne af skærmen.

X koordinater fungerer ligesom du husker fra matematik klasse. Når X-værdierne bliver større, bevæger sprite sig til højre. I computergrafik virker Y lidt anderledes end den gjorde i matematik klasse.De fleste viser hardware scanning fra top til bund, så Y er 0 øverst på skærmen og øges, mens du bevæger dig nedad.

Bemærk, at den maksimale højde og bredde er gemt i variabler: scene. højde og scene. bredde.

Alle de forskellige bevægelsesmetoder handler om at manipulere X og Y. Du kan indstille disse værdier manuelt (setPosition (), setX () og setY ()), eller du kan ændre værdierne (changeXby (), changeYby ()). Hver af disse metoder virker øjeblikkeligt, så du kan bruge dem til at styre spritets position eller bevægelse.

Nogle af disse funktioner ligner hinanden. For eksempel ser changeXby () meget ud som setChangeX (). Disse funktioner har en subtil men vigtig forskel. Funktionen changeXby () ændrer værdien af ​​X en gang. Hvis du vil have ændringen til at fortsætte, skal du fortsætte med at ringe til denne funktion.

Funktionen setChangeX () er mere kraftfuld, fordi du kan kalde den en gang, og det ændrer gentagne gange x med den værdi, du bestemmer, indtil du kalder setChangeX () igen.

For de fleste sprites, vil du virkelig bare give sprite en vinkel og en hastighed, og lad det gå. Sprite-objektet har præcis de metoder, du har brug for til denne adfærd. setAngle () giver dig mulighed for at bestemme hvilken retning sprite vil gå, og setSpeed ​​() lader dig angive hastigheden til at gå i den retning. Ligesom de fleste bevægelsesfunktioner er der også ChangeAngle () og ChangeSpeed ​​() metoder.

Sådan styres bilen i dit spil

Nøglerne Nedadgående mekanisme kan kombineres med bevægelsesmetoderne, så du nemt kan styre din bil. Her er den relevante kode fra opdatering () igen:

funktionsopdatering () {scene. klar(); // tasterne hvis (keysDown [K_LEFT]) { bil. changeAngleBy (-5); } // ende hvis hvis (keysDown [K_RIGHT]) { bil. changeAngleBy (5); } // ende hvis hvis (keysDown [K_UP]) { bil. changeSpeedBy (1); } // ende hvis hvis (keysDown [K_DOWN]) { bil. changeSpeedBy (-1); } // ende hvis bil. opdatering ();} // end opdatering

Den egentlige kodning er ret let at forstå:

  1. Ryd scenen.

    Som sædvanlig er den første rækkefølge i virksomheden i opdateringen () -funktionen at rydde op i lekrummet. Sørg for at du har slettet den forrige ramme, før du gør noget andet.

  2. Check for en venstre-pil-tryk.

    Brug tasterneDown-mekanismen til at bestemme, om venstre pil trykkes for øjeblikket.

  3. Hvis venstre pil trykkes, drejes bilen tilbage.

    Hvis brugeren for øjeblikket trykker på venstre piletast, drejer bilen fem grader mod uret. Brug metoden changeAngleBy () til at ændre bilens visuelle udseende såvel som den retning, den rejser.

  4. Gentag for højre pil.

    Højrepilen er den samme, men denne gang drejer bilen fem grader med uret.

  5. Brug op-pilen til at accelerere.

    Hvis brugeren trykker på pil op, skal du ændre bilens hastighed. Brug en positiv værdi til at accelerere bilen. Det vil ikke tage meget, fordi denne kode kontrolleres 20 gange i sekundet.

  6. Sæt bilen ned med nedpilen.

    Brug en lignende mekanisme til nedpilen.Skift hastigheden med en negativ værdi for at bremse bilen. Denne tilgang giver mulighed for negative værdier, og bilen vil sikkerhedskopiere, hvis du vil.

  7. Træk bilen i sin nye position.

    Det er kritisk vigtigt at huske at kalde spritens bevægelsesfunktioner ændrer ikke bilens placering! Det ændrer kun interne data i spilets hukommelse. Du skal kalde bilens opdatering () -metode for at se disse ændringer i handling.

Hvordan man opretter brugerinteraktion i dit HTML5-spil - dummies

Valg af editor

Husk Hvad du læser - dummier

Husk Hvad du læser - dummier

Læsning er et stort problem i uddannelsesmæssige cirkler. At have evnen til at læse en sætning, udtale alle ordene flydende og have et ordforråd bredt nok, der ikke nødvendiggør at henvise til en ordbog er en ting. Men at have evnen til at huske, hvad du læser, er noget helt andet. Hvis du ikke kan huske hvad ...

10 Personer med høj selvværd - dummier

10 Personer med høj selvværd - dummier

Mennesker med en stærk følelse af selv- værd at udvise en række egenskaber. Når du ser disse egenskaber reflekteret i dig selv og dine handlinger, vil du vide, at du er ankommet: De sætter pris på sig selv og andre mennesker. De nyder at vokse som en person og finde opfyldelse og mening i deres liv. De kan grave dybt ind i sig selv.

Videnskabelig dokumentation for brug af mindfulness til depression - dummies

Videnskabelig dokumentation for brug af mindfulness til depression - dummies

Mindfulness er nu en evidensbaseret teknik, der anvendes bredt til depression af NHS (Storbritanniens gratis offentlige nationale sundhedsvæsen). Det er også godkendt af NICE eller National Institute for Health and Care Excellence som en godkendt terapi til forebyggelse af tilbagefald af depression. Der er talrige kliniske undersøgelser, der viser effektiviteten ...

Valg af editor

Hvad er kravene til Cloud Integration? - dummies

Hvad er kravene til Cloud Integration? - dummies

Mange virksomheder vurderer i første omgang udfordringerne ved at integrere data på tværs af hybrid computermiljøer. De fleste integrationsproblemer mellem offentlige og private skyer vil fokusere på SaaS (Software as a Service) applikationer. Dette kan være en ny oplevelse for mange it-organisationer, der er vant til at kontrollere de datakilder, de integrerer. De antager ...

Hvad er platform som en service (PaaS) i Cloud Computing? - dummies

Hvad er platform som en service (PaaS) i Cloud Computing? - dummies

Platformen som en Service (PaaS) er et abstrakt og integreret cloudbaseret computermiljø, som understøtter udvikling, drift og administration af applikationer. Applikationskomponenter kan eksistere i et skymiljø eller kan integreres med applikationer, der administreres i private skyer eller i datacentre. En primær værdi af et PaaS-miljø er, at udviklere ikke har ...

Hvad er software som en service (SaaS) i Cloud Computing? - dummies

Hvad er software som en service (SaaS) i Cloud Computing? - dummies

Virksomheder har opdaget, at nogle organisatoriske og økonomiske fordele kan realiseres ved at bruge software som en service (SaaS) applikationer i cloud computing. De giver mulighed for at få en tredjepartsorganisation til at håndtere alle de detaljer, der går ud på at holde komplekse applikationer i gang. SaaS er ikke et selvstændigt miljø. I stedet er disse applikationer og tjenester ...

Valg af editor

Hvordan tastetryk logging kan bruges til at hak adgangskoder - dummies

Hvordan tastetryk logging kan bruges til at hak adgangskoder - dummies

En af ​​de bedste teknikker til at fange adgangskoder er ekstern tastetryk logning - brugen af ​​software eller hardware til at optage tastetryk som de er skrevet til computeren. Interessant teknik, men det virker. Vær forsigtig med tastetryk logning. Selv med gode hensigter rejser overvågning medarbejdere forskellige juridiske spørgsmål, hvis det ikke gøres korrekt. Diskuter med ...

Sådan får du adgang til en netværksprinter ved hjælp af et webinterface - dummier

Sådan får du adgang til en netværksprinter ved hjælp af et webinterface - dummier

Printere med direkte netværk Forbindelsen omfatter ofte en indbygget webserver, som giver dig mulighed for at styre printeren fra enhver browser på netværket. Følgende billede viser hjemmesiden for en HP LaserJet 400 M401dne printer. Denne webgrænseflade giver dig mulighed for at se statusoplysninger om printeren og kontrollere printerens konfiguration. ...

Sådan tilføjes en netværksprinter - dummier

Sådan tilføjes en netværksprinter - dummier

, Før du kan udskrive til en netværksprinter, skal du konfigurere din computer for at få adgang til den netværksprinter, du vil bruge. Fra Start-menuen skal du åbne Kontrolpanel og derefter dobbeltklikke på ikonet Printere. Hvis din computer allerede er konfigureret til at arbejde sammen med en netværksprinter, er et ikon for netværket ...