Die geesten, volg je voetstappen

, die geesten, volg je voetstappen,,,,,,,,,, delen, deel 4,,,,,,, de delen van het netwerk, maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen, zeker het pad volgen. En is een eenvoudig concept: voorwerp van A naar B naar C -, enzovoort.Maar als we willen dat ons doel volgen de weg van de spelers, zoals een spook in een race spel, wat moeten we doen?Tijdens de les, ik zal je laten zien hoe je dat deze wegwijzer in 3.,,,, het uiteindelijke resultaat bekijken, daarna de SWF 's, gebruik dan de pijl te bewegen.Op de spatiebalk overstappen naar de "geest", zal het volgens u al om de weg, op de weg naar de volgende logische, laten we aannemen dat de spelers van de oorsprong van mobiele vier eenheden en twee eenheden.Als we in dezelfde positie aan het einde van de geest, het moet een mobiele eenheid uit de 4 en 2 eenheden met een punt van oorsprong.Laten we zeggen, onze speler is met 2 snelheid om nauwkeurige weg, onze geest zal ook met een snelheid van 2. Als we de spelers in een moratorium te blijven.De oplossing is "ghost" te volgen van de exacte locatie van de spelers, maar dit zal met betrekking tot de opgeslagen gegevens.Integendeel, wij moeten doen is de opslag van gegevens van elke speler is op verschillende sleutels, dus als de speler rechts tien seconden, we dezelfde gegevens worden opgeslagen als speler in een halve seconde maar, deze technologie moet aan de volgende voorschriften werken we spoken, geesten, en de speler: een geest van dezelfde oorsprong, moeten voldoen aan dezelfde de geest moet de weg als de speler, de snelheid van de spelers in de geest van de mobiele., met een opslag van elke speler van de tijd veranderen.,, stap 1: vaststelling van het creëren van een nieuwe Flash (behandelingen). 3.De breedte van 480 en een hoogte van 30 frames per seconde van 320, voor.Weg van de achtergrond van Wit en de bewaring van de documenten, creatingghosts. De FIA,; ten slotte de soort, creatingghosts,., als we in onze behoefte is aan de oprichting van een voor de videoclip.Begon het in kaart brengen van twee 20px Plaza geen beroerte.In de eerste plaats een videoclip worden ingevuld, wordt het register, genaamd, atleten, en de uitvoer van behandelingen voor klasse, speler.Nu hetzelfde proces, alsmede de vervanging van de geest en de soort, de naam, de geesten.Deze videoclip van het podium verwijderd, met de volgende codes tot uw document: invoer, pakje {flash. Weergegeven. * * * * * * * * * * * * * *; de invoer van Flash. Het evenement. Creatingghosts uitgebreid; de cursus movieclip (publiek var spelers: nieuwe spelers =. (); De functie van creatingghosts () {} addchild (spelers);}}, vanzelfsprekend, de volgende stap is het opzetten van een speler: invoer, pakje {flash. Weergegeven. * * * * * * * * * * * * * *; de invoer van Flash. In het geval van invoer. Flash.geom.point;; de invoer van flash.ui.keyboard; de invoer van flash.utils.timer; de invoer van flash.utils.gettimer; uitbreiding van de categorie movieclip spelers van de variabele StartPos: {; de variabelen te beginnen: de int; snelheid: nummer = 2; de variabelen van de variabele keyp currentlife:int;Ressleft: booleaanse = valse; de variabelen keypressright: booleaanse = valse; de variabelen keypressup: booleaanse = valse; de variabelen keypressdown: booleaanse = valse; openbare functie. () {}}}, drie variabelen is te helpen bij het voldoen aan de regels voor, laat ons uitgangspunt, is begonnen, is de tijd toen De spelers bij het podium, snelheid, is onze snelheid.En hoeveel keer currentlife, wordt gebruikt om te controleren of de speler is dood, dus elk pad opslag en de aangenomen waarde.In de afgelopen vier variabelen wordt gebruikt om te controleren of de sleutels, het is tijd om te creëren, geesten, invoer: pakket {flash. Weergegeven. * * * * * * * * * * * * * *; de invoer van Flash. In het geval van invoer. Flash.geom.point;; de invoer van flash.utils.gettimer; de invoer van flash.utils.timer; de uitbreiding van de geest van de variabelen movieclip (statische - punt: - = nieuwe installatie (de); statische de variabelen: - = nieuwe installatie (); de variabelen: int = 0; vanaf de tijd van de variabelen: int; de snelheid: de hoeveelheid = 2; de variabelen selectedlife:int; de functie van ghost () {}}}, twee statische variabelen, de bestemmingen, en zullen worden gebruikt voor de opslag van de generator,,, de eerste speler worden opgeslagen; de coördinaten van de locatie, als de spelers van de beweging, en de tweede opslagElke verandering van de tijd.Andere variabelen die overeenkomen met de categorieën, player.,, stap 2: - speler, waarvan de fabrikant in de toevoeging van de volgende regels: addEventListener (event.added_to_stage ervan); te creëren en in de tweede plaats, (). Functie: openbare functies en ondernemers (E: gebeurtenissen) {}, ten eerste, moeten We de toegang tot, de tijd, en de geest van de tijdreeksen voor de bevordering van nieuwe, maal de generator.Dit is een beetje verwarrend, de demonen die in de toekomst meer tijd - toegestaan. Met veel leven), begint de tijd = flash. Instrumenten. Gettimer (); de geest. Keer. - (-); currentlife = ghost.times.length - 1; de geest currentlife. []. Duw (flash. Instrumenten. Gettimer () - start);, begint de tijd die voor de lopende periode (in milliseconden voor waarde); - de toevoeging van een nieuwe submatrix geest tijdperk -; we, currentlife, die voor deze nieuwe reeks indexen; wij hebben de afgelopen jaren in deze functie van deze nieuwe netwerken het eerste element, nu we die start: laat = nieuwe punt (stage.stagewidth/2, fase. Stageheight /2); dit laat. X. X, y = laat dit.. Y. De duivel. - (-) punt. Duwen.De geest. Currentlife bestemmingen []. Duw (laten); en ons uitgangspunt is in het centrum van de fase van onze spelers; we vinden de oorsprong; een nieuwe serie toegevoegd aan bestemmingen, geesten, in de eerste plaats -; en duwde, dus op dit moment, in deze reeks, geest.. [0] [0], met inbegrip van de sinds de oprichting van het aantal milliseconden staatsinvesteringsfondsen (bijna nul), maar de geest. De bestemmingen [0] [0], met inbegrip van het punt in het midden, ons doel is de code zo is, na de tweede speler met een druk op de knop, en De geest. Keer [0] [1], wordt vastgesteld op 1000, en de geest. De bestemmingen [0] [1], zal een ander punt, voorzien van het Centrum (omdat de spelers niet hebt aangeraakt?).Laat de sleutels (of als de spelers in een andere), ghost. [0] [2], wordt vastgesteld voor de huidige tijd, maar de geest. De bestemmingen [0] [2], zal op dit punt en de spelers, en nu, hier is de derde, de luisteraar: addEventListener (event.enter_frame, enterFrame); - fase. AddEventListener (keyboardevent.key_down, keydown); - fase. AddEventListener (keyboardevent.key_up, keyup);,, stap 3: belangrijke gebeurtenissen, laten we nu niet op enterFrame en sleutels, openbare functies keydown (E: mobiele) {als z 'n vrouw = = = = = = = = = = = = = keyboard.left & & keypressleft = false) {updatewaypoints (de); keypressleft = waar anders als (;) kan keyboard.right = = = = = = = = = & & keypressright valse) {updatewaypoints ()Keypressright = waar;}; als het kan keyboard.up = = = = = = = = = & & keypressup valse) {updatewaypoints (); keypressup = waar anders als (;) kan keyboard.down = = = = = = = = = & & keypressdown valse) {updatewaypoints (); keypressdown = waar;} als (= = toetsenbord. De ruimte) () {vernietigen;}}, gewoon een eenvoudige verklaring om te voorkomen dat belangrijke fouten, en twee nieuwe functies, heet.En updatewaypoints (), wordt elke keer bellen, nieuwe ideeën en nieuwe tijdperk in de geest - en vernietigen (), gebruikt voor de verwijdering van de spelers in de fase van de geest.Maar we gaan die functie laten we klaar voor de functie van openbare functies, de sleutels. Keyup (E: mobiele) {als (kan keyboard.left = = = = = = = = = & & keypressleft waar) {updatewaypoints (); keypressleft = vals;} anders als (kan keyboard.right = = = = = = = = = & & keypressright waar) {updatewaypoints (); keypressright = vals;} als (keyboard.up kan = = = = = = = = = & & keypressup waar) {updatewaypoints (); keypressup = vals;} anders als (kan keyboard.down = = = = = = = = = & & keypressdown waar) {updatewaypoints (); keypressdown = vals;}}, dit als we het tegenovergestelde doen: de variabele is die valse, is het van cruciaal belang is vrijgelaten, Wegwijzer bijgewerkt. Zal ik ingaan op meer informatieIn deze functie, wat is er gebeurd tussen.Elke keer als je de pers een belangrijke bestemmingen en bijgewerkt, dus als je op een andere tot wijziging van punt en de tijd toe te voegen aan de geest van de matrix, maar wat gebeurt er als de belangrijkste spelers besluiten werden vrijgelaten, omdat veranderd?Rekening houdend met de vernieuwing van onze bestemmingen en keer.Als je dat niet doet zal geen rekening te houden met de geest van 90 graden draaien; integendeel, het zal een beetje een neerwaartse hoek.,, stap 4: vernieuwing en vernietiging van onze updatewaypoints (), de functie is vrij eenvoudig, want het bevat een code, we hebben geschreven: de openbare functie, updatewaypoints () {de geest currentlife. []. Duw (flash. Instrumenten. Gettimer () - start); de geest. Currentlife bestemmingen []. Duw (nieuwe (x, Y,,);}, vernietigen (), zeer eenvoudige taken.De vernieuwing van de vluchten, de toevoeging van een spook, gebeurtenis luisteraars zijn gestopt en onze spelers worden geschrapt: de openbare functie, vernietigen () () {updatewaypoints; var ': de geest = nieuwe geest (); de moeder. Addchild (.); removeEventListener (event.enter_frame, enterFrame); removeEventListener (fase. Keyboardevent.key_down, keydown); de fase van removeEventListener (keyboardevent.key_up, keyup.), moeder. Removechild (de);}, en stap 5: de spelers te enterFrame, door het creëren van een openbare functie, (E:enterFrame gebeurtenissen) {}, om dat doel te bereiken zullen wij nog een simpele aanrijding grens, blijkt dat De bestemmingen in deze veranderingen update: als ((deze X (deze breedte /2) > 0) {} als ((deze X + (deze breedte /2) < stage.stagewiDTH) {} als ((dit (deze hoogte. Y /2) > 0) {} als ((dit. Y + (deze hoogte /2) < fase. Stageheight) {}, nu de spelers zullen alleen in een bepaalde richting de grens geen contact.In de eerste if-statement voeg de volgende code voor een links:, als (keyPressLeft = = = = = = = waar) {als (this.x- (this.width/2) < = 0) {updateWaypoints (); this.x = this.width/2;}else{this.x = snelheid;}}, eerste links, we controleren als de sleutel is Momenteel neer, dan kunnen we kijken. Zie als de Player's positie groter zijn dan of gelijk aan 0. Als we onze waypoints of zo, en reposition de speler aan de rand van de linker kant, we gaan als het niet de speler te blijven tot de exact hetzelfde ding, is gedaan voor de andere drie sides:, als (keyPressRight = = = = = = = waar) {als (this.x+ (this.width/2)% GT% = stage.stageWidth) {updateWaypoints (); this.x = (stage.stageWidth - (this.width/2));}else{this.x + = snelheid;}}, als (keyPressUp = = = = = = = waar) {Als dit. Y (deze hoogte /2) < = 0) {updatewaypoints (); de this.height/2} {y =; anders. Y = snelheid;}}, als (keypressdown = = waar) {als dit. Y + (deze hoogte /2) > = fase. Stageheight) {updatewaypoints (); de y = (stage.stageheight - (deze hoogte /2);} {y + = snelheid of.;}}, en onze speler voltooid.Stap 6:,, de Wraith gestart, wordt aangevuld met de volgende in de lijn van de fabrikant van de Wraith, en roept addEventListener (event.added_to_stage: ervan), net als eerder gecreëerd; (functie), openbare functie:,, de ondernemers (E: gebeurtenissen) {times.length selectedlife = 1; deze X = bestemmingen [0] [selectedlife] X, y = - punt selectedlife, [] [0]. Y; begin = flash. Instrumenten. Gettimer (); addEventListener (event.enter_frame, enterFrame);}, beginnen we met de keuze van de te gebruiken we het pad van in gebreke blijven van het laatste reeks keuzes. En Dan hebben we het standpunt van de oorsprong van de geest om) de geesten zijn begonnen.En dan enterFrame creëren voor de luisteraar, stap 7: geest. En de natuurlijke enterFrame, creëren we enterFrame functie:, openbare functie (E:enterFrame gebeurtenissen) {}, nu we door de tijd - cyclus.Dat doen we door variabele, en ik, wij controleren of het is kleiner dan de lengte van de serie, we controleren ook de tijd groter is dan of gelijk is aan de huidige tijd in de reeks, en I < [1] selectedlife. Generaal & & flash. Instrumenten. Gettimer () - Start > = maal [selectedlife] [M]) {ik + + + + + +;}, het volgende wat je kunt doen is als de tijd van de huidige tijd zal minder dan een geest: als (flash. Instrumenten. Gettimer () - met het tijdperk van selectedlife < [] [M]) {}); updateposition (,, salaristrap 8: bijwerking. Positie, en dan beginnen we met deze stap te creëren, updateposition (). Functie: openbare functie, updateposition () {}, de toevoeging van twee variabelen, namens de verschillen en de afstand.En de oude en de nieuwe locatie:, de VAR - verschil: punt = bestemmingen [] [M] selectedlife. Aftrek (nieuwe (x, Y,,); var regio = diff.length, minus de punten met elkaar te vinden; we afstand.Nu moeten we naar de geest: als (stofwolken < = snelheid) {x = bestemmingen [] [M] selectedlife. X; dit punt selectedlife. Y = - [] [M]} {diff.normalize. Y; of (1); deze X + Y = diff.x * snelheid; dit + = diff.y * snelheid;}, in de eerste plaats controleert of afstand kleiner dan de snelheid (afstand geest zal elke aankruisen); als we de geest van directe.Als we echter afstand is zo normaal ("betekent dat het verschil tussen de amplitude gelijk is aan 1, met behoud van de richting en de betekenis van de vector - euclidische vectoren in een flits), we meer in de richting van de positie van de geest van de,,,, stap 9: een bewijs dat dit een beetje. Is het gebruikt veel middelen van de verwerker, laden en voortdurend, en soms zelfs een aantal LAG 's, de logica van de juiste is.We vinden het een beetje tegen de methode, hoewel.In de eerste plaats is, is je SWF 's in de publicatie wordt geperst; dit zal leiden tot een in het begin maar zich soepeler te laten verlopen, in een langere - tijd.Als je van plan bent om je voor de opstelling van het project offline Exe tweede is meer dan wenselijk: gemakkelijk de beeldsnelheid voor ongeveer 60. Conclusie:,,, bedankt voor het lezen van deze handleiding.Als je geen vragen of opmerkingen laat hen met rust.Als je wilt dat een extra uitdaging om een geest te volgen routes, in tegenstelling tot de,, of in slow motion.



Previous:
Next Page: