Innholdsfortegnelse:
Video: Denne bomben er fire ganger kraftigere enn «alle bombers mor» 2024
Bilforhandlere er betennende om å installere våpen i turen, men det er derfor folk blir spillprogrammerere. Så du kan legge til missiler til HTML5-spillobjektene dine. Hvis du vil ha raketter i minibussen din, har du missiler (i det minste i den virtuelle minivanen). Mange videospill involverer skyting, og det er en ganske enkel effekt å legge til.
Grunnleggende om prosjektiler for spillet ditt
Missiler, kuler og andre prosjektiler er ganske enkle å jobbe med. Her er noen ideer å huske på:
-
Projektilet er en sprite. Lag en ny sprite for prosjektilet. Du kan gjøre det til en enkel prikk, eller tegne en komplett missil.
-
Lag en tilpasset sprite for raketten. Missilet vil trenge noen metoder, så du kan også gjøre det til en tilpasset sprite.
-
Missiler dør når de forlater skjermen. Den enkleste måten å få denne oppførelsen på er å sette rakets grense til DIE.
-
Legg til en brann () metode. Brannen () -metoden vil aktiveres når missilen slås av.
-
Gjenbruk samme missil igjen og igjen. Gamle raketter dør aldri. De er bare skjult og gjenbrukes når brukeren skyter igjen. Når et missil treffer noe, skjul missilet. Det vil gjøre det usynlig og ugjennomtrengelig for kollisjoner.
Slik starter du ditt spillraketter
Koden for missil. html er like mye av standardbildekoden du har sett:
missil. html var spill; var bil; var missil; funksjon Bil () {tCar = ny Sprite (spill, "bil. png", 50, 30); TCAR. setSpeed (3); TCAR. setAngle (135); TCAR. checkKeys = function () {if (keysDown [K_LEFT]) {this. turnBy (-5);} hvis (keysDown [K_RIGHT]) {this. turnBy (5);} hvis (keysDown [K_SPACE]) {missil. brann ();}} // / End Checkcheck returnerer tCar;} // End Car Def-funksjonen Missile () {tMissile = New Sprite (spill, "missil. png", 30, 20); tMissile. gjemme seg(); tMissile. brann = funksjon () { dette. forestilling(); tMissile. setSpeed (15); dette. setBoundAction (DIE); dette. setPosition (bil, x, bil, y); dette. setAngle (bil. getImgAngle ()); dette. setImage ("missil. png"); dette. setSpeed (15); } // avslutte brann returnere tMissile;} // end missile def-funksjon init () {game = new Scene (); bil = ny bil (); missil = ny missil (); spill. start ();} // end init funksjon oppdatering () {spill. klar(); bil. checkKeys (); bil. Oppdater(); missil. Oppdater(); } // sluttoppdatering
Projektiler er mye morsomme å bygge, og de er ikke veldig vanskelige, som vist her:
-
Bygg en normal sprite for å starte prosjektilet.
Dette er ikke absolutt nødvendig, men en kule vil normalt bli sparket fra et pistol, en pil vil bli sparket fra en bue, og et kjernefysisk bananraket blir sparket fra hvilket kjøretøy som helst.
-
Projektilet vil være sin egen sprite.
Projektilet fungerer som en vanlig sprite, men den vil bli opprettet og ødelagt dynamisk.
-
Legg til en utløser for å skyte raketten.
Fordi bilen skal starte raketten, er utløserkoden i bilens kontrolløkemetode.
-
Still inn missilen som skal være skjult som standard.
Missilet er alltid rundt, men det er skjult offstage når det ikke er nødvendig. Hvis du bruker en sprite's hide () -metode, vil sprite fortsatt være i minnet, men det vil ikke bli trukket, og det vil ikke utløse noen kollisjoner.
-
Lag en brann () -metode for raketten.
Missilet sitter og venter på å bli aktivert. Brannmetoden () -metoden spruter missilet til handling.
-
Gjør prosjektilet synlig.
Metoden show () er motsatt av skjul (). Det får en sprite til å være synlig og utløse kollisjoner.
-
Gi raketten en rask starthastighet.
Som du vet, er missiler normalt raske.
-
Skjul raketten når den treffer kanten.
Når missilen treffer kanten av skjermen, må den være skjult. Innstilling av missilens grense til DIE vil gjøre denne oppførselen automatisk.
-
Skjul raketten hvis den treffer noe annet.
Dette enkle eksempelet har ingen andre objekter, men hvis missilen kolliderer med noe annet, må du bruke sin hide () metode for å simulere missilet som blir ødelagt ved kontakt.
Når du har den vanlige rakettadferdens arbeid, kan du prøve en rekke interessante variasjoner:
-
Legg tyngdekraften til missilene. Hvis det er en side scroller, legg til en tyngdekraften til dine missiler for en ormlignende effekt.
-
Legg til annen fysikk til missiler. Du kan få rakettene til å dra som alle andre sprite.
-
Lag en smart missil. Bruk vinkelTo-metoden til å bestemme vinkelen mellom et missil og et mål, og slå missilet mot målet på hver ramme. Dette vil simulere en smart missil som aldri går glipp av. (En god oppstart, men det gjør spillet for enkelt hvis du har for mange.)
-
Lag en ikke så smart missil. Hvis fienden skyter en missil på spilleren, vil du ikke ha det ganske så smart. Først, gjør missilet sakte nok til at det kan gå over. For det andre, sett hindringer som kan ødelegge missilet i veien. For det tredje, gjør raketten smart kun en gang til en stund slik at den kontrollerer posisjonen til målet hver femte eller ti rammer.