Het creëren van een vliegtuig ons spel. Spel in bier:

, het creëren van een vliegtuig ons spel. Spel in bier:,,,,,,,,,, 9, 1 eenheid,,,,,,,, de delen van het netwerk, maandag wat minder in tuts + cursussen in maar drie dollar.Niet' dit artikel niet missen, maken deel uit van een reeks genaamd het creëren van een vliegtuig extra bier. Vechtspel. Het creëren van een vliegtuig in het spel. Interfacecreate bier: vliegtuigen strijd spelen extra bier.: meer spelen, je creëert,,,,,, ingevoerd bij de eerste van een reeks van Een we proberen om te beginnen, het scherm en de overgang van het scherm staat, gamelevel,.In deze handleiding, we blijven in onze weg en beginnen met de uitvoering van het spel.De variabele, open, gamelevel. Elkaar in de eerste les, en we creëren in de documenten, en de toevoeging van de volgende scène, lokale bestuur voor verhaal. Newscene (), de lokale playerspeedy = 0,., waar de lokale playermovespeed playerspeedx = 0 = 7 = 60 waar lokale spelers playerwidth lengte = 48 = 8 de lokale bulletheight lokale bulletwidth = 19 = 81 plaats islandheight lokale islandwidth = 100 = 0. Numberofenemystogenerate lokale numberofenemysgenerated = 0 = {} - bezit van alle kogels spelen lokale playerbullets huis brand waar de kogel uit enemybullets = {}): "alle" vijandelijke vliegtuigen lokale eiland = {} het behoud van alle eilanden, waar planegrid = {} een 0 of 1 (waarvan 11 - systeem voor de vervaardiging van lokale enemyplanes = {}) de basis van opslagDe vijand van mijn vliegtuig. Livesimages = {} - hebben alle vrijheid leven "imago van de lokale numberoflives = 3 = {} - behoud van lokale freelifes in alle vrijheid leven spelen lokale playerisinvincible = de verkeerde plek is GameOver = valse lokale numberofticks = 0. Dit cijfer is verhoogd islandgroup spel waar elk frame een groep die alle eilanden van lokale cluster groep bezit alle vliegtuigen, munitie, plaats van lokale spelers planesoundchannel - vliegtuig. Fireplayerbullettimer lokale fireenemybulletstimer generateislandtimer lokale generatefreelifetimer lokale rectup soundchannel..." "in de plaatselijke controle DPAD rectdown..." "in de plaatselijke controle DPAD rectleft" links "...In de lokale rectright dpad controle - controle in de DPAD, "recht", zijn de meeste van deze vanzelfsprekend is, maar mijn opmerkingen te verduidelijken.   vanaf hier, alle codes zijn ingevoegd boven de lijn, terug naar de plaats delict,,,, 2.  , createscene,, begint toe te voegen, createscene, functie, de heer  . LUA,., createscene functie wordt genoemd, ter plaatse, lijkt niet te bestaan.We zullen in deze functie toe te voegen aan de functie van de weergave van objecten, spel, scène: createscene (gebeurtenissen aan het einde van de plaatselijke groepen) self.view scenario: addEventListener ("createscene" scenario), 3.Setupbackground,,,, setupbackground (functie) lokale achtergrond. Newrect (0, 0, display.contentwidth, blijkt dat de achtergrond. Contentheight): setfillcolor (0,0,1): in plaats van mening (achtergrond),,, setupbackground, creëren we een blauwe achtergrond van het gebruik van een object  , newrect, methode.En setfillcolor,   methoden RGB, percentages.Beroep, functie, setupbackground,   createscene, zoals blijkt uit onderstaande tabel.,,, scène: createscene (gebeurtenissen) self.view setupbackground () aan het einde van de plaatselijke groepen, en 4.  , setupgroups,,, setupgroups geconcretiseerd, functie, islandgroup cluster,   groep,,, en wordt opgenomen in het veld, van mening,.De groupobject   is een bijzondere vorm van een object, kan je nog andere object.Nog belangrijker is verhoogd, islandgroup,, het lijkt erop dat, om ervoor te zorgen dat de volgende   eilanden van de vliegtuigen.,,, de functie van setupgroups () islandgroup = display. Newgroup () () = display cluster. Newgroup in plaats van mening: (islandgroup): in plaats van mening (clusters) en, tot slot, de bel, setupgroups, de functie, het   createscene, zoals blijkt uit onderstaande tabel.,,, scène: createscene (gebeurtenissen) plaatselijke groepen self.view setupbackground () () aan het einde van setupgroups, 5.  , setupdisplay,,, setupdisplay, functies die een zwarte rechthoek, op De bodem van het scherm wordt ingevoegd, DPAD, vliegtuigen,,, het lijkt erop dat beeld. De functie van de lokale, setupdisplay (), temprect = display. Newrect (0, weergegeven. Contentheight-70, weergegeven. Contentwidth, 124);Mprect:setfillcolor (0, 0, 0); ter plaatse te bekijken: steek (temprect) lokale vlag = weergegeven. De koning van de nieuwe ("teken. Papoea - Nieuw - Guinea" blijkt. Contentwidth-139, weergegeven. Contentheight-70); ter plaatse te bekijken: steek (logo) lokale DPAD = display. De koning van De nieuwe ("dpad. Papoea - Nieuw - Guinea", 10, display.contentheight - 70) in plaats van mening: (DPAD) en, tot slot, de oproep aan de functie,   createscene, zoals blijkt uit onderstaande tabel.,,, de functie van createscene (gebeurtenissen plaats: de plaatselijke groepen) self.view setupbackground setupgroups () () () aan het einde van setupdisplay, 6.  , setupplayer,,, setupplayer, slechts een verhoging van de functie van de spelers het beeld scherm.Het doel van een twee - only, contentwidth, contentheight, namens de pixels, en de inhoud van de oorspronkelijke breedte en lengte.Deze waarden voor de breedte en hoogte van de standaard scherm, maar als je met de inhoud van de toewijzing van een andere schaal, waarde. LUA,.We gebruiken deze eigenschap in   scène spelers.,,, de functie setupplayer () = display speler. ("de nieuwe speler. Papoea - Nieuw - Guinea" (display. Contentwidth /2) - (playerwidth /2), (display.contentheight - 70) - speler lengte) player.name = "actoren" scene van mening: steek. (spelers en, tot slot, genaamd), setupplayer, de functie, het createscene,.,, scène: createscene (gebeurtenissen) self.view setupbackground (plaatselijke groepen) setupgroups () () () aan het einde van setupdisplay setupplayer, 7.  , setuplivesimages,,, setuplivesimages,   functies worden zes In het leven en de positie van de beelden in de LINKER BOVENHOEK van het scherm.En deze beelden opgenomen, livesimages, tabel, zodat we kunnen verwijzen ze later.Tot slot, we er zeker van zijn dat alleen de eerste drie beeld zichtbaar is.,,, i = 1 functie setuplivesimages (6), de lokale templifeimage = display. De koning van de nieuwe ("leven" van 20, 40 *. Van Papoea - Nieuw - Guinea, tabel 10) (livesimages, templifeimage). In plaats van mening: steek (templifeimage) als (M > 3) en templifeimage.isvisible = vals; einde,,, setuplivesimages, ook in functie van  , bel de createscene,  .,, functionele scène: createscene (gebeurtenissen) plaatselijke groepen self.view setupbackground () () () setupgroups setupdisplay setupplayer () () aan het einde van setuplivesimages,  , setupdpad, 8.,, setupdpad, de functie van een vier vakken, rectup rectdown,,,,,Ctleft, en  , rectright,.We zorgvuldig en plaatst ze in beeld van de verdeling van DPAD, is niet zichtbaar, en ervoor te zorgen dat, ishittestable, eigendom,,,,, als je een object niet zichtbaar is, niet Je eerste contact met ze.Echter, door de vaststelling van, ishittestable, eigendom, echt, dit gedrag is herschreven.,,, de functie setupdpad () rectup = display. Newrect (34, display.contentheight-70, 23 - 23) rectup:setfillcolor (1,0,0) rectup.id = "rectup.isvisible = vals; rectup.ishittestable = waar; de plaats van mening: (rectup rectdown opgenomen.) = display. Newrect (34, display.contentheight-23, 23,23) rectdown:setfillcolor (1,0,0) rectdown.id =" in het kader van rectdown.isvisible = vals; rectdown.ishittestable = waar; plaats van mening: steek (rectdown) rectleft = display. Newrect (10, vertoont. Contentheight-47,23, 23) rectleft:setfillcolor (1,0,0) rectleft.id = "links" rectleft.isvisible = vals; rectleft.ishittestaBle = waar in plaats van mening:; (rectleft) rectright = display. Newrect (58, display.contentheight-47, 23,23) rectright:setfillcolor (1,0,0) rectright.id = "juiste" rectright.isvisible = vals; rectright.ishittestable = waar; plaats van mening: steek (rectright) en, tot slot, je had gelijk.Deze functie is ook de oproep createscene,,.,, de functie van createscene (gebeurtenissen plaats: de plaatselijke groepen) self.view setupbackground () () () setupgroups setupdisplay setupplayer () () () aan het einde van setuplivesimages setupdpad,, 9.  , resetplanegrid,,, resetplanegrid, het herstel van planegrid, Tabel en in de elf nul.Tabel 11, planegrid, als punt op de X - as, met inbegrip van een vijandelijke vliegtuigen kunnen worden geplaatst.We beginnen met de vijand dit keer meer betekenis. Resetplanegrid (), functie, planegrid = {} i = 1, tabel 11 ingevoegd (planegrid doen., 0) aan het einde van deze functie,,, createscene,.,, functionele scène: createscene (gebeurtenissen) plaatselijke groepen self.view setupbackground () () setupdisplay setupgroups () () () setupplayer setuplivesimages setupdpad () () aan het einde van resetplanegrid, 10.  , enterscene, en nu al een object plaatsen, is het tijd om toe te voegen aan de gebeurtenissen van luisteraars, een Timer, wacht. Als je me de les, het voorste deel van het enterscene, Is de functie van een. Een goede plek.Eerst wordt de volgende code.,,, scène: enterscene (gebeurtenissen) plaatselijke groepen self.view einde scène: addEventListener ("enterscene" scenario), 11.Het verwijderen van vorige verhaal, als we in dit scenario, we moeten het schrappen van de vorige scène.Voeg de volgende code enterscene, functie, om dit te doen.,,, lokale previousscene = verhaal. Getprevious () schot. Removescene (previousscene), als je in een nieuwe scène, de vorige plaats kan je   referentie, getprevious, aan het script.We zullen het volledig uit het script, removescene,  , het verhaal van bestuur, het voorwerp, de,,, 12.De gebeurtenissen van de DPAD toe te voegen aan de luisteraars rechthoekige, zal de volgende code toe te voegen in je in de vorige stap in dit deel van de code van de code.   toevoeging van een publiek elke rechthoek, beroept, moveplane,   elke aanraking.Laten we in dit, naar moveplane, de volgende stap in de functie van rectup:addEventListener (.,,, "contact", moveplane) rectdown:addEventListener ("contact", moveplane) rectleft:addEventListener ("contact", moveplane) rectright: addEventListener ("contact", moveplane), 13.Moveplane,,,, moveplane, is verantwoordelijk voor de snelheid van het vliegtuig.We onderzoeken een gebeurtenis dat gelijk is aan het begin  , betekent dit dat de speler geland in plaats van z 'n vinger terug.Als dat waar is, hebben we vastgesteld op basis van de snelheid en de richting van de rechthoek, worden verplaatst.Als een gebeurtenis dat gelijk is aan het einde van z 'n vinger, dan weten we dat de spelers, en dat betekent dat we de snelheid, nul,,,, moveplane (gebeurtenissen) als event.phase = = "begin" dan als (event.target.id = = ") en dan aan het einde van playerspeedy = - playermovespeed Als (event.target.id = =") en dan playerspeedy = aan het einde van playermovespeed als (event.target.id = = "links") en dan aan het einde van playerspeedx = - playermovespeed als (event.target.id = = "juiste") en dan aan het einde van playerspeedx = = = = = = = = playermovespeed "event.phase" voorbij "en playerspeedx = 0 = 0, 14 playerspeedy voorbij.Planesound,, laten we nog een stem van ons spel.De toevoeging van het volgende fragment van de  , enterscene, functioneren.Het   laden en MP3 -  , planesound,.Door de vaststelling van  , verkeer,   eigenschap  , - 1,   stem zal altijd verkeer.Als je wil weten in extra bier. Audio -, moet   documenten controleren.,,, de lokale planesound = audio. Loadstream ("planesound -") planesoundchannel = audio. Spelen (planesound {1), cyclische = -), 15.   enterFrame gebeurtenissen,,,, we hebben nog een gebeurtenis de luisteraar rennen als een enterFrame,,, gameloop, functioneren.De frequentie van de gebeurtenissen, enterFrame, hangt af van de beelden per seconde (FPS) waarde van de toewijzing ervan,.,.In ons geval, het wordt 30 keer per seconde.Nog een gebeurtenis luisteraar functies, enterscene,.,, loopt: addEventListener ("enterFrame", gameloop), 16.  , gameloop, in gameloop,   functie, we werken de positie en de uitvoering van elk elf andere logica moet elk frame.   lezen als je meer gevoel in de cirkel. In het belang van   米迦勒杰姆斯威廉姆斯, schreef een goed artikel, wordt uitgelegd hoe de gemeenschappelijke   spel in omloop.De toevoeging van de volgende code.,,, functionele gameloop () () aan het einde van moveplayer, 17.Moveplayer,,,, moveplayer, beheer van de functie van spelers   vliegtuig.We hebben het vliegtuig volgens de  , playerspeedx,, playerspeedy,   waarde, dit is  , 7, 0,   of, afhankelijk van de spelers, of aan de DPAD of niet.   raadplegen, moveplane, functioneren als niet duidelijk is.We doen ook een grens te controleren, om ervoor te zorgen dat het vliegtuig niet van het scherm af. Moveplayer (), de functie, de spelers. X = X + playerspeedx speler. Spelers. Y = Y + playerspeedy speler. Als de spelers. X < 0) en spelers. X = 0 als (speler. X > display.contentwidth - playerwidth en de spelers). X = display.contentwidth - playerwidth voorbij als de spelers. De Y < 0) en spelers. Y = 0 als (speler. Y > display.contentheight 70 spelers en spelers lengte). Y = display.contentheight 70 speler is, als je het spel eindigt, testen, moet je in staat zijn om vliegtuigen op het scherm. Het gebruik van dpad.,, conclusies, brengt dit het einde van de les van deze tweede reeks.In het volgende deel van deze reeks, gaan we verder met de wedstrijd.Bedankt voor het lezen en zien je daar.

Final product image



Previous:
Next Page: