Hem Personliga finanser Hur man lägger tyngd i ditt HTML5-spel - dummies

Hur man lägger tyngd i ditt HTML5-spel - dummies

Innehållsförteckning:

Video: LIBGDX para Android - Tutorial 20 - Box2D - How to make games Android 2024

Video: LIBGDX para Android - Tutorial 20 - Box2D - How to make games Android 2024
Anonim

Gravitetsberäkningar har varit en del av HTML5-videospel från början. Det finns faktiskt två typer av gravitation att överväga. I plattformsspel spelar spelaren nära en planet, och all tyngdkraft verkar dra allt rakt ner.

När du vet hur man lägger till accelerationsvektorer är plattformstil gravitationen verkligen lätt att arbeta med. Tänk på gravitation som en konstant kraft som alltid drar ner en liten mängd varje ram.

Hur man lägger till raketer på ditt spels tur

Detta exempel har en annan intressant funktion. När du trycker på uppåtpilen ändras bilbilden till en annan bild med flammor.

Koden för hoverCar-exemplet visas här i sin helhet:

hoverCar. html var bil; var stad; var spel; funktion Bil () {tCar = ny Sprite (spel, "hoverCar. png", 70, 50); tCar. setSpeed ​​(0); tCar. hSpeed ​​= 0 tCar. checkKeys = funktion () {tCar. changeImage ("hoverCar. png"); om (keysDown [K_LEFT]) { detta. hSpeed ​​- = 1 } om (keysDown [K_RIGHT]) { detta. hSpeed ​​+ = 1 } om (keysDown [K_UP]) { detta. addVector (0, 5); detta. changeImage ("hoverCarThrust. png") ;} detta. changeXby (this. hSpeed); } // slutet checkKeys tCar. checkGravity = function () { om (detta. y> 580) { detta. setPosition (detta, x, 580); } annars { detta. addVector (180, 1); } // slut om } // slutkontrollGravity returnera tCar;} // slutbil def funktion init () {game = new Scene (); bil = ny bil (); city ​​= new Sprite (spel, "city. png", 800, 600); stad. setSpeed ​​(0); stad. setPosition (400, 300); spel. start ();} // end init-funktionen uppdatering () {game. klar(); stad. uppdatering(); bil. checkKeys (); bil. checkGravity (); bil. uppdatering ();} // slutuppdatering

Hur man använder kraftvektor i ditt spel

Gravity är faktiskt ganska enkelt. Det är helt enkelt en kraftvektor. De andra intressanta delarna av det här exemplet innebär att man ändrar den horisontella rörelsen utan att ändra bilens bildvinkel och justera bilden för att indikera propelleren. Här är stegen:

  1. Bygg två olika bilder.

    Använd din bildredigerare för att skapa två olika versioner av bilden.

  2. Bygg en vanlig sprite.

    Liksom de flesta fordon sprites behöver du en checkKeys () -metod. Den här är uppbyggd på vanligt sätt, men beteendet är lite annorlunda.

  3. Ställ in bilden som standard.

    Standardbilden har inga thrusters. Använd metoden changeImage () för att göra detta till standardbilden. När thrustrarna är påslagen kommer bilden att ändras.

  4. Använd en variabel för att styra horisontell hastighet.

    Du kan skapa hSpeed-variabeln för att hantera bilens horisontella hastighet.

  5. Ställ vänster och högerpil för att ändra hSpeed.

    Vänster och höger piltangenter ändrar hSpeed-variabeln.

  6. Använd changeXby för att ställa in horisontell hastighet.

    Efter att ha kontrollerat alla nycklar ändrar du bilens x-värde till nuvarande värde för hSpeed.

  7. Upppilen lägger till en vektor uppåt.

    Använd den nu ökända addVector () -funktionen för att lägga till en liten kraftvektor uppåt när användaren trycker upp pilen. Kom ihåg att 0 grader är uppe. Spela runt med det här värdet för att få den mängd drag du vill ha för ditt spel.

  8. Visa tryckknapparna när pilen trycks upp.

    Om användaren trycker på uppåtpilen måste du visa thrustrarna. Använd metoden changeImage () för att ställa in spritets bild till den med raketpistoler.

  9. Bygg en checkGravity () -metod.

    Denna metod kommer att kallas varje ram för att kompensera för tyngdkraften.

  10. Kontrollera om du är på marken.

    I det här exemplet definieras marken som ett y-värde som är större än 580.

  11. Om du inte är på marken lägger du till en tyngdkraftsvektor.

    Eftersom det kommer att ackumuleras måste gravitationskraftvektorn vara ganska liten. Du måste balansera kraften i tyngdkraften och thrustrarna för att få beteendet du vill ha. Om tyngdkraften är för stark, kommer de inte att fungera. Om thrusters är för starka, flyger bilen helt enkelt ut i rymden.

Hur man lägger tyngd i ditt HTML5-spel - dummies

Redaktörens val

Justering och justering av text i Word 2016 - dummies

Justering och justering av text i Word 2016 - dummies

Styckejustering i Word 2016-dokument har ingenting att göra med politik, och motiveringen har lite att göra med anledningarna till att lägga text i en paragraf. Istället hänvisar båda termerna till hur styckets vänstra och högra kanter ser på en sida. De fyra alternativen är vänster, center, rätt och fullständigt motiverad, ...

Hur man gör två kolumntext i Word 2016 - dummies

Hur man gör två kolumntext i Word 2016 - dummies

När man vill imponera på någon Med din text i Word 2016 kan du försöka sätta två kolumner på din sida. Några fler kolumner, och textbredden är för mager och svår att läsa. Två kolumner är dock ett bra sätt att bli snyggare och förbli läsbara. Starta ett nytt dokument. Eller om du ...

Hur man gör mellanslag mellan stycken i Word 2010 - dummies

Hur man gör mellanslag mellan stycken i Word 2010 - dummies

När man skriver i Word 2010, du don Du måste inte trycka på Enter två gånger för att lägga till extra mellanrum mellan punkterna. Word kan lägga till det här rummet automatiskt:

Redaktörens val

Outlook 2013 Adressböcker - dummies

Outlook 2013 Adressböcker - dummies

Outlook 2013 använder fortfarande flera olika Adressböcker som verkligen ingår i Microsoft Exchange Server. Adressböckerna har flera separata, oberoende listor över namn och e-postadresser - det är ganska förvirrande. Microsoft förenklade problemet med att hantera adressböcker i Outlook 2002 och senare versioner, men det hjälper inte om du använder ...

Outlook 2016 s Kontakter Hem Tab - dummies

Outlook 2016 s Kontakter Hem Tab - dummies

Outlook 2016s Kontakter är mer än bara en lista med namn och e-postadresser. Du kan utnyttja fliken Kontakter hem i Outlook 2016-bandet för att skapa nya kontakter, för att ordna hur du visar kontakterna du har, eller för att skapa e-postmeddelanden eller sammanslagningsdokument. Följande bild visar ...

Outlook Web Access - dummies

Outlook Web Access - dummies

Outlook Web Access är en del av ett program som heter Microsoft Exchange, vilket många stora och icke- så stora organisationer kör till avancerade Outlook-funktioner som offentliga mappar, delade kalendrar och tilldelade uppgifter. Inte alla företag som använder Microsoft Exchange erbjuder Outlook Web Access, men om du gör det kan du logga in på Outlook från nästan ...

Redaktörens val

Polering Ditt utvecklingsverktyg för kakaoprogrammering - dummies

Polering Ditt utvecklingsverktyg för kakaoprogrammering - dummies

Kakao är en typ av programmering som du kan utföra med Apples Utvecklarverktyg. Kakao är en samling verktyg och bibliotek som låter dig få ut det mesta av Mac OS X-programmeringen. Många funktioner gör Cocoa bra, bland annat följande: Modulär objektorienterad design Användning av ramar Visual interface design Varför program med ...

Snabba typer - dummies

Snabba typer - dummies

Swifts hantering av typer liknar andra språk, men varje språk har olika inriktningar och regler. I allmänhet har dessa regler att göra med de sätt som skrivs måste genomföras i fall där det finns tvetydighet. Hur mycket kostar språket (eller dess kompilator eller runtime bibliotek) för att säkerställa typkompatibilitet? Swift's approach ...

Klasserna Anatomi av en Swift Class - dummies

Klasserna Anatomi av en Swift Class - dummies

ÄR hjärtat i något objektorienterat programmeringsspråk. Till skillnad från klasser i mål-C och några andra språk behöver Swifts klasser ingen rubrikdeklaration. I stället får du hela klassen (eller struktur eller uppräkning) definitionen i ett format som detta: klass MyClass {var storedNumber: Int = 0 init (myNumber storedNumber: Int) {self. storedNumber = storedNumber ...