Een eenvoudig spel.

zal het leren leren, komt dit spelletje van training,,,,,,,,,,,, 33 - eenheid,,,,,,, de delen van het netwerk, maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen.,, de training (eerste reeks), zal je leren spelen en zal de basis van de ontwikkeling van het gebruik van javascript, canvas, yuan.Je hoeft geen ervaring in het programma, zelfs geen: //europa.eu.int /comm /ervaringen (met uitzondering van het artikel).Oké, laten we beginnen.,,, het is moeilijk te missen ", goedgekeurd en flash" artikelen verschenen in de netwerken, met name sinds Steve jobs en flash vorig jaar Microsoft deze week aangekondigd dat de standaard Windows 8 niet steunen - winnen.Ik wil niet dat hier in het debat, of uw advies, zal het geen schade aan het leren.Zelfs al weet je de flash, het doet geen pijn in je kist is bovendien een instrument, dat deze richtsnoeren niet weet je flash, of een ervaring in het programma.Eigenlijk, moet je voordat je weet alles wat hier een interpretatie: http: //europa.eu.int op snelheid.Dit is het!Als je kan lopen, kan je met deze, dat ik in mijn flash training reeks op basis van deze reeks, die is gebaseerd op een veel oudere - training door een naam frozenhaddock (van wie ik dat ik met z 'n gedachten dank).Dit is een rechtstreeks of training, havens, maar; ik zal volledig herschreven en de interpretatie van een paar noten, geschikt voor de herziening, de compatibiliteit van de browser:,, is de ontwikkeling van de website van een praktische en belangrijke kwestie, maar we moeten een beetje egoïstisch en inzet om ervoor te zorgen dat we de spelen in een browser werkingsprincipe: chroom.Wees gerust, we zullen met andere browser (met inbegrip van de mobiele telefoon) in andere activetuts + les, maar naarmate de tijd verstreek, we dringen aan op het gebruik van chroom, dus hebben we onze aandacht. De code,, schone, belangrijker is dan vele andere platforms in 5, omdat de fundamentele programmeertaal (.) krijg je veel.Dus, moeten we ervoor zorgen dat je een goede code te schrijven...Uiteindelijk.Eerst zullen we een beetje in de war, maar om te voorkomen dat je dingen rollen, rollen in de "beste praktijken", in de praktijk beginnen, alles doen wat in het eerste deel van de handleiding, zullen we alles geregeld in enkele zeer fundamentele mechanismen in het spel.In de toekomst zal een toename van het aantal onderdelen van de vijand te paaien, hoge cijfers, scherm, op verschillende niveaus, en al die dingen.De oprichting van de,,, het eerste wat we moeten doen is het creëren van een http: //europa.eu.int).Je kan het gebruik van de tekst op dit punt, of een paar honderd dollar voor de ontwikkeling van gespecialiseerde software: //europa.eu.int /comm /. Persoonlijk, ik wacht nu gratis software.Er zijn drie voorstellen: textedit (MAC), + + (Windows). De tekst van lid 2, en de grote ramen, OS X en Linux).Neem je keuze, het creëren van een nieuw document, dan komen de volgende;.Doctype: //europa.eu.int /comm /> < http: //europa.eu.int > < hoofd > < titel > zal het spel < /titel > < /hoofd > < lichaam > < /body > < /html >, als je niet weet wat, kijk me aan de gids: //europa.eu.int /comm /, het creëren van een op je harde schijf, folders, avoidergame, het redden van de http: //europa.eu.int: //europa.eu.int /comm /spel Binnen.Als je nu het laden, het zal een blanco pagina, zoals u weet, dus deel van de tekst daar gewoon om zeker te zijn dat alles goed is.Ik zou nog een link naar de les, maar het kan je in iets wat je leuk vindt en je naam en locatie, misschien?Met het;.Doctype: //europa.eu.int /comm /> < http: //europa.eu.int > < hoofd > < titel > zal het spel < /titel > < /hoofd > < lichaam > < p> van < een href = "http://active.tutsplus.com/tutorials/html5/learn-html5-with-this-simple-avoider-game-tutorial" rel = "externe" > dit spelletje de hele Training < /> < /P > < /body > < /html > javascript. Oké, nu, Het zal u niet verbazen te horen dat wij binnenkort een javascript - javascript laat pagina 's doen, en dat is we moeten het spel.We gaan al onze javascript in de externe bestanden, om het netjes, en dit dossier in een aparte MAP, hou het netjes, dus of het creëren van een nieuw MAP, noemt, is in je, avoidergame, MAP.En dan, het creëren van een nieuwe, leeg en het behoud van de tekst, en main.js, in deze nieuwe avoidergame /JS /MAP, verander je naar dit dossier: http: //europa.eu.int /, <.Doctype html> < html> < head> < title> 5 Avoider Game< /title> < script src = "js/main.js" > < /script> < /head> < body> < p> van < a "http: /://active.tutsplus.com/tutorials/html5/learn-html5-with-this-simple-avoider-game-tutorial" rel = "extern" > leren duiken. Dit eenvoudige Avoider spel Tutorial< /a>.< /p> < /body> < /html> de excellentie, dat ik geschreven, src = "http://active.tutsplus.com/... Wat... /js/main.js", of "C:\\AvoiderGame\\js\\main.js src ="; deze manier, zeggen De der: //europa.eu.int /comm /Page, "kijk voor A, J 's MAP in de verwijdering als je, en dan is het gebruik van de main.js, het dossier, in het." een A, op grond van de weg,., als je dat wil.Dit is het werk van een waarschuwing,, ("werk!")En, je de J 's dossier: //europa.eu.int /comm /, dan laden.Als je een dialoog, is alles in orde.Doctype html> < html> < head> < title> 5 Avoider Game< /title> < script src = "js/main.js" > < /script> < /head> < body> < p> van < a "http: /://active.tutsplus.com/tutorials/html5/learn-html5-with-this-simple-avoider-game-tutorial" rel = "extern" > leren duiken. Dit eenvoudige Avoider spel Tutorial< /a>.< /p> < /body> < /html> CSS, terwijl in het Verband der, laten een externe CSS dossier zo goed gebruik van te maken, kunnen we de tekst van het nieuwe nicer, en we kunnen je in het spel. Gebruik te CSS, creëer een nieuwe verdeling in een AvoiderGame CSS,,,,, en dan het creëren van een nieuwe, een tekst die de stijl CSS dossier, en, in het echt.Wijziging: //europa.eu.int /comm /zo: je, <.Doctype html> < html> < head> < title> 5 Avoider Game< /title> < script src = "js/main.js" > < /script> < link rel = "stylesheet": /css/style.css "/> < /head> < body> < p> van < a;: /http://active.tutsplus.com/tutorials/html5/learn-html5-with-this-simple-avoider-game-tutorial" rel = "extern" > leren met deze eenvoudige Avoider zal het spel Tutorial< /a>.< /p> < /body> < /html>, ik ga m 'n CSS dossier te wijzigen die we niet vaak gebruik op demo' s stijl hier op Activetuts+; je vrij te komen (IT, met je eigen weg, of mijn lichaam {blanco:,:&#ffffff; problemen oude centrum; 20px; kleur: #575757 font: 14;De px - /21px Ariel, helvetica, sans serif;} {# b93f14; kleur: een tekst die {}: -: geen;} {breedte 600 pixels met een; aanpassing van de tekst: links; de marge van auto 's: 15px}, deze les is niet de CSS, dus als je Het niet weet, maak je geen zorgen over haar.Als je nieuwsgierig bent, kan je in de W3Schools. COM. Deze eigenschap van de CSS), oké, dat is de methode voor de vaststelling van de verveling.Zie je de pagina 's op. Hier, je kan het downloaden van de bron tot nu toe in een gecomprimeerd bestand is hier.Laten we het hoofd!In het spel, wat we nodig hebben is een vertegenwoordiger van de spelers in het spel van de rol van de beelden.Gebruik alles wat je leuk vind. - Je foto 's van je gezicht, Twitter, hoofd van een foto van je schilderijen - maar zorg er voor dat er een transparante achtergrond, is het ongeveer rond, maar het 30x30px, de oorspronkelijke koers, die is gebaseerd op het gebruik van een schedel.Ik weet niet waarom, maar ik betwijfel of dit is een ondermijning van de anti - spel typische houding te staan immers in ons onder de huid, niet iedereen van ons is een schedel?Ben ik niet een traditie breken, dus ik zal hier met behulp van een schedel.Je kunt door te klikken op de download van mij, als je niet wil dat je jezelf, voordat je het vraagt,:,: ja, ik, ik, voor de Commissie, wat je ook kiest, het behoud van het avatar.png, binnen een nieuwe MAP genaamd, IMG, naar binnen, avoidergame,.Heb je de MAP, nu ziet er als volgt uit:, /avoidergame /game.html /CSS /stijl CSS /JS /main.js /foto 's /avatar. Papoea - Nieuw - Guinea, hoe kunnen we dan het, laten we spelen?Als je al gezien, je zou deze suggestie:, < IMG - src = "foto 's /avatar. Papoea - Nieuw - Guinea" (= "Avatar" />,,, dit is echt, waardoor de avatar in onze pagina.Maar dit moeten we niet met een doek, IMG, de elementen waaruit blijkt dat een beeld van een Papoea - Nieuw - Guinea of JPG belasting (of wat dan ook.Doek, etiketten, nieuwe aankomt, kan leiden tot een dynamisch beeld van andere kleine beeld, tekst, de oorspronkelijke vorm, en zo veel als je wilt.Het kan op elk moment van de inhoud van de amendementen, dus je kan aan de ontwerpresolutie hallucinaties of interactie, als je de inhoud van de veranderingen die op grond van de gebruiker, we creëren, creëren we een andere: //europa.eu.int /comm /hetzelfde doek:, <.Doctype: //europa.eu.int /comm /> < http: //europa.eu.int > < hoofd > < titel > zal het spel < /titel > < script src = 'J' s /Main. J 's "> < /scripts > < link rel =" stijl href = "CSS - /stijl." /> < /hoofd > < lichaam > < canvas > < /canvas > < p> van < href = "http://active.tutsplus.com/tutorials/html5/learn-html5-with-this-simple-avoider-game-tutorial" rel = "externe" > dit spelletje van de hele Training < /> < /P > < /lichaam > < /html >,... Maar als je je niet zien, kan je iets zien.Het is onzichtbaar, dus het enige effect is de tekst een beetje naar beneden, de CSS, kunnen wij een profiel, kunnen we zeggen dat het naast de achtergrond.Voeg je CSS:{: 1 - pixel vaste, canvas zwarte;}, kijk uit.Het is klein, maar de pixels; laten we de door [[beeld: 2005 (de oude school TV - afmetingen): <.Doctype: //europa.eu.int /comm /> < http: //europa.eu.int > < hoofd > < titel > zal het spel < /titel > < script src = 'J' s /Main. J 's "> < /scripts > < link rel =" stijl href = "CSS - /stijl." /> < /hoofd > < lichaam > < canvas breedte = "400" hoogte = "300" > < /canvas > < P > van < href = "http://active.tutsplus.com/tutorials/html5/learn-html5-with-this-simple-avoider-game-tutorial" rel = "externe" > dit simpel spel. Leren duiken < /> < /P > < /body > < /html >,, hoe beter.Nu, ik zei dat we het beeld kan worden toegevoegd aan de dynamiek op het doek, dus laten we het doen in het kader van een functionele, weet je nog hoe ik in: //europa.eu.int /comm /richtsnoeren laten dingen gebeuren als je klikken http: //europa.eu.int elementen?Hier is een snelle herziening: <.Doctype html> < html> < head> < title> 5 Avoider Game< /title> < script src = "js/main.js" > < /script> < link rel = "stylesheet": /css/style.css "/> < /head> < body> < het onclick=" signalering ('Clicked de canvas') ";" breedte = 400 "hoogte =" 300 "> < /canvas> < p> van < a: /http://active.tutsplus.com/tutorials/html5/learn-html5-with-this-simple-avoider-game-tutorial" rel = "extern" > leren met deze eenvoudige Avoider zal Het spel Tutorial< /a>.< /p> < /body> <, als je /html> als het doek, dat is de doos message. get a dialoogDit is omdat de signalering (), is een javascript functie: dit is een kortere weg, een paar regels.We schrijven ons in onze eigen functie is geschied.Open, main.js, is als volgt: de functie van input, alertseveraltimes () (signalering ("Hallo!")(waarschuwingen) ("kijk, we kunnen een paar berichten van continue werking"); het alarm ("boos?")} (schrapping van de oorspronkelijke, alarm ("werk!")Als je dat nog niet hebt, weet je hoe dat werkt?We hebben een nieuwe functie, genaamd alertseveraltimes (), waarvan de inhoud in een beugel ({en),,,,).Als we zeggen dat het alertseveraltimes browser, (), de functie, het loopt op elk alarm, een voor een, laten we het proberen, <.Doctype: //europa.eu.int /comm /> < http: //europa.eu.int > < hoofd > < titel > zal het spel < /titel > < script src = 'J' s /Main. J 's "> < /scripts > < link rel =" stijl href = "CSS - /stijl." /> < /hoofd > < lichaam > < canvas onclick= "alertseveraltimes ()"; "breedte = 400" hoogte = "300" > < /canvas > < p> van < href = "http://active.tutsplus.com/tutorials/html5/learn-html5-with-this-simple-avoider-game-tutorial", "externe" > deze rel = een eenvoudig spel leren duiken < /> < /P > < /body > < /html >, probeer het.We hebben daadwerkelijk bindende, signalering (functie), als een van de grote taken, alertseveraltimes (), die op het doek, dat het klikt, je vraagt je misschien af waarom het alarm ("!")We openen, maar als de pagina 's, maar alertseveraltimes (), niet, zelfs als ze op dezelfde plaats zijn (top, heer. Is).Dit is omdat de magische sleutel, functie, wanneer de browser dit zien, is zij niet van mening dat, "ja, dit is een code, ik moet rennen."En is van mening dat, "ja, dit is een code, moet ik vastgebonden aan een nieuwe functie, kan ik je later rennen!"In ieder geval.Laten we nu onze functie doen wat doeken.Laat het laden een beeld is een beetje moeilijk, dus we kunnen beginnen met een aantal eenvoudige: wijziging van hun omvang, een wijziging van het canvas, een van de meest opvallende kenmerken van javascript is het veranderen van de pagina 's: //europa.eu.int /comm /vermogen.Kijk eens, tot wijziging van de J 's dossier bevat: de functie van changecanvassize, () {gamecanvas.width = 600; gamecanvas.height = 800;}, kan je al raden wat het is: het doen met een doek element, en het veranderen van de breedte en lengte,,,, kenmerken (gebruiken we niet in De cijfers in citaten. Http: //europa.eu.int), in tegenstelling tot de eigenschap, behalve...Hoe is het, gamecanvas, verwijst naar het doek, we zijn op onze website?Nou, dat is het niet.Maar.We moeten erkennen dat, ten eerste, moeten we aan het element, id, (hierna "identificatie") eigendom; dat is gewoon een naam die we gebruiken, kunnen we de verwijzing naar het script, <.Doctype html> < html> < head> < title> 5 Avoider Game< /title> < script src = "js/main.js" > < /script> < link rel = "stylesheet": /css/style.css "/> < /head> < body> < het =" gameCanvas "onclick=" alertSeveralTimes () ";" breedte = 400 "hoogte =" 300 "> < /canvas> < p> van < a: /http://active.tutsplus.com/tutorials/html5/learn-html5-with-this-simple-avoider-game-tutorial" rel = "extern" > leren met deze eenvoudige Avoider zal het spel Tutorial< /a>.< /p> < /body> < /html>, terwijl;; we maken de? Op het,, onclick, die aan onze nieuwe punt, changeCanvasSize (), function:, <.Doctype html> < html> < head> < title> 5 Avoider Game< /title> < script src = "js/main.js" > < /script> < link rel = "stylesheet": /css/style.css "/> < /head> < body> < het =" gameCanvas "onclick=" changeCanvasSize () ";" breedte = 400 "hoogte =" 300 "> < /canvas> < p> van < a: /http://active.tutsplus.com/tutorials/html5/learn-html5-with-this-simple-avoider-game-tutorial" rel = "extern" > leren met deze eenvoudige Avoider zal het spel Tutorial< /a>.< /p> < /body> < /html>,. Nog steeds niet is, goed, genoeg.We moeten laten weten dat het verwerken van de javascript: //europa.eu.int /comm /(of elementen: //europa.eu.int /comm /, want het is precies weet, changecanvassize): functie () {doc. GetElementById ("gameCanvas"). De breedte = 600; doc. GetElementById ("gameCanvas"). De hoogte = 800;}, nu ik weet dat, dat lijkt niet volledig in overeenstemming is met de logica.Waarom, gamecanvas, plotseling in de prijzen?Waarom moeten we het gebruik van documenten. GetElementById ("gameCanvas"), in plaats van dat, getdocumentelement ("gameCanvas"), en zelfs de dossiers. GameCanvas,???????Ik beloof het, in deze serie, dit alles zal duidelijk worden, maar nu, alsjeblieft, samen met het nieuwe, het testen van je code.Het doek omvang zelf, als je klikt het.Geweldig!En nu, moet ik je eraan herinneren: programmeur is lui.We haten het steeds weer dezelfde code te schrijven, als wat de methoden voor vermindering van de aard van de vereiste, we doen het.Dus, mag ik je voorstellen aan een goede Referentie: de functie van het doek steno, changecanvassize () {VAR gamecanvas = documenten. GetElementById ("gameCanvas"); gamecanvas.width = 600; gamecanvas.height = 800;}, zien hoe het werkt?Zoals, de functie en de sleutelwoorden en zei, "Hé, al deze verpakking code onder de naam,, alsjeblieft, changecanvassize (), var, wachtwoord zegt," Hé, met één woord, gamecanvas: //europa.eu.int /comm /elementen, de ID 'gamecanvas "Alsjeblieft".En vervolgens (in lijn 3 en 4 hierboven), kunnen we gebruik maken van deze nieuwe steno, gamecanvas, alsjeblieft, de lange, documenten. GetElementById ("gameCanvas"), aangezien zij betrekking hebben op hetzelfde is,,, is het belangrijk dat wij nog niet het creëren van een nieuw canvas; we hebben gedaan, gamecanvas, de verwijzing naar de bestaande het element, maar het is mogelijk, var, het creëren van nieuwe dingen... En op de schedel, zoals ik al zei, we zijn op weg naar toetreding tot het beeld (lege) canvas.Maar we doen dit op voordat we moeten in beeld.Op wat we kunnen doen,,, moet je een beeld in je laden, wijziging van de functie van deze changecanvassize js:, () {VAR gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); gamecanvas.width = 600; gamecanvas.height = 800;}, (ik heb toe te voegen aan de duidelijk gescheiden, var, de lege regel van de rest. Verklaring), we gebruiken hier, var, wachtwoord weer - maar deze keer, dat een subtiel verschil: "Hé, het creëren van een nieuw imago, het voorwerp en het gebruik van het woord avatarimage betekent dat vanaf nu, alsjeblieft.", Het imago, de fundamentele doelstellingen zijn hetzelfde, IMG - element; hier het grote verschil is, dat het niet in het: //europa.eu.int /comm /,.We hebben deze nieuwe elementen, maar het is niet alleen in het in de ether: //europa.eu.int /comm /; javascript drijven.Ik voel me een beetje vreemd, net als een element in de pagina 's, IMG, beeld, is bijna nutteloos is niet klaar, de src, doen de volgende stap:,, de functie changecanvassize () {VAR gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); gamecanvas.width = 600; gamecanvas.height = 800; avatarimage.src = "foto' s /avatar. Papoea - Nieuw - Guinea";}, (ik weer met een lege regel om de code, om verschillende dingen te doen (zoals de tekst van de paragraaf afzonderlijk), ben ik weer gebruik te maken van de relatieve weg is de positie van de documenten.), nu is het beeld, maar je op mijn woord te geloven dat moment, want het is nog steeds in de ether buiten, we kunnen het niet zien.Maar we kunnen naar het andere kenmerken, functies changecanvassize () {VAR gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); gamecanvas.width = 600; gamecanvas.height = 800; avatarimage.src = "foto 's /avatar. Papoea - Nieuw - Guinea"; alarm (avatarimage. Breedte);}, we noemen het blijkt dat we een dialoog, met een breedte van waarde in beeld, ons eigendom.Controleer je code, eens kijken wat je hebt; ik krijg, 29, en dat is volkomen juist, maar een code, we kunnen op het canvas, hoofd van de functie: changecanvassize () {VAR gamecanvas = documenten. GetElementById ("gameCanvas"); avatarimage = nieuwe beeld (VAR); gamecanvas.width = 600; gamecanvas.height = 800; avatarimage.src = "foto 's /avatar. Papoea - Nieuw - Guinea"; gameCanvas. GetContext ("D"). Drawimage (avatarimage, 0, 0);}, laten we dit:,, gamecanvas. GetContext ("D"): we in feite niet rechtstreeks op het canvas schilderen. We trekken de zogenaamde "; dit schilderij context" Laten we beslissen of we het willen 2d of 3D. Oké, nu er geen 3D - achtergrond, maar dit is onze plannen voor de toekomst. Drawimage ():,,, P.Letty is eenvoudig.Dit is een functie, we trekken een beeld op de achtergrond van het doek.,, avatarimage: dit is ons, in de ether in beeld, drijvende voorwerpen, weet je nog?,,, 0, 0,: dit is ons de coördinaten van het beeld te schilderen.Op school, je leert, (0, 0) is de linker bladzijde; op de computer, het linker (x - as naar rechts, de y - as en naar beneden), kijk.Het werkt!(zo niet, onthoud, je moet naar chroom; ik ben niet garanderen dat dit zal in alle andere browser.), meerdere schedel, drawimage (), als een aardappel stempel:,,, foto 's van jimmiehomeschoolmom, het is gewoon een beeld nodig van de inhoud en het klonen van het voorwerp van hun grond, natuurlijk. We behandelen, maar niet de verf pixels, je gedachten, en dat betekent dat we kunnen nog meerdere schedel canvas, zoals: changecanvassize () {var, de functie van gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); gamecanvas.width = 600; gamecanvas.height = 800 avatarimage.src = "; foto' s van Papoea - Nieuw - Guinea; gameCanvas /hoofd.". GetContext ("D"). Drawimage (avatarimage, 0, 0); gamecanvas.getconteXT ("D"). Drawimage (avatarimage, 100, 50); gameCanvas. GetContext ("D"). Drawimage (avatarimage, 200130); gameCanvas. GetContext ("D"). Drawimage (avatarimage, in);}, kijk, een feest.Ook kunnen we de schedel in willekeurige plek elke keer changecanvassize () {var, de functie van gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); gamecanvas.width = 600; gamecanvas.height = 800; avatarimage.src = "foto 's /avatar. Papoea - Nieuw - Guinea"; gameCanvas getContext ("D".). Drawimage (avatarimage, wiskunde, wiskunde. () × 100. () × 100);}, wiskunde. (), gaf je een willekeurig getal tussen 0 en 1, wiskunde. () × 100, geef je een willekeurig getal tussen 0 en 100; dit betekent dat de Nieuwe de schedel van een locatie (coördinatie tussen 0, 0) en (100).Kijk!Maar waarom, nu alleen een schedel?Het is een nieuwe functie?Elke keer dat je aan een functie, doek worden vrijgesproken?Elke keer als je tot wijziging van zijn lengte en breedte, uw doek verwijderd worden, zelfs als je het niet veranderen.Dus, als we ons zo veranderd is, changecanvassize: functie () {VAR gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); avatarimage.src = "foto 's /avatar. Papoea - Nieuw - Guinea"; gameCanvas. GetContext ("D"). Drawimage (avatarimage, wiskunde. () 100 (), wiskunde. * * * * * * * 100);},... En dan kunnen we verder gaan met de toevoeging van een nieuw schedel. En het feit dat we de wijziging van de naam van de functie, drawavatar (), pak je spullen, en een functie:, drawavatar () {VAR gamecanvas = documenten. GetElementById ("gameCanvas var avatarimage"); het nieuwe beeld (); avatarimage.src = = = = = = = "foto' s /avatar. Papoea - Nieuw - Guinea"; gameCanvas. GetContext ("D"). Drawimage (avatarimage, wiskunde, wiskunde. () × 100. () × 100);}, vergeet niet te wijzigen, onclick, eigendom, aan deEn in je: //europa.eu.int /comm /<.Doctype html> < html> < head> < title> 5 Avoider Game< /title> < script src = "js/main.js" > < /script> < link rel = "stylesheet": /css/style.css "/> < /head> < body> < het =" gameCanvas "onclick=" drawAvatar () ";" breedte = 400 "hoogte =" 300 "> < /canvas> < p> van < a: /http://active.tutsplus.com/tutorials/html5/learn-html5-with-this-simple-avoider-game-tutorial" rel = "extern" > leren met deze eenvoudige Avoider zal het spel Tutorial< /a>.< /p> < /body> < /html>, oké. We krijgen dat, nu moving., Adding avatar, Interactivity, wil ik de avatar te maken of de muis.We kunnen met de animatie doet hetzelfde principe: als we doorgaan met het wissen van de inhoud op het doek, en dan weer de foto die op verschillende locaties, avatar er komt beweging.Dus alles wat we moeten doen is de belichaming van het behoud van een sterke coördinatie in de muis, we zijn er klaar voor.Maar hoe we dit kunnen bereiken?Een grote gebeurtenis, van wat we tot nu toe gedaan hebben, zou je willen, zullen we nog, de muis, evenementen. Dit zal leiden tot de gebruiker de muis), dan laat het lopen. Drawavatar (), maar in het licht van de huidige en de coördinaten van de muis.Het is erg leerzaam, maar helaas niet het echte werk, omdat het niet om een eenvoudige methode voor het verkrijgen van de coördinaten van de muis, maar het is zeer dicht in de buurt van wat we moeten doen.Kijk eens: drawavatar () {var, de functie van gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); avatarimage.src = "foto 's /avatar. Papoea - Nieuw - Guinea"; gameCanvas. GetContext ("D"). Drawimage (avatarimage, wiskunde, wiskunde. () × 100. (*) (100); gamecanvas. AddEventListener "muis", redrawavatar);}, dit is ongeveer dezelfde, de voorstellen van de redrawavatar (;), functionele (nog niet geschreven) zal worden genoemd als een muis op het canvas.Maar er is een groot verschil, let op hoe we zijn geschreven, redrawavatar, in plaats van redrawavatar (), in dit deel van de code, maar in onze: //europa.eu.int /comm /, we hebben drawavatar (),,,, "tussen haakjes" (tussen haakjes), onclick, het kenmerk van De gebeurtenis.Voldoende reden is om nu een beetje ingewikkeld (hoewel in de reeks zal je begrijpen dat aan het eind van het jaar), maar het is een heel belangrijk resultaat: het verkrijgen van een muis die ons de coördinaten bij de muis, de browser voor het creëren van een nieuw object - net als toen we creëren een nieuwe in Onze de eerste beelden javascript.Dit is een eigenschap van het voorwerp, het creëren en een bepaalde eigenschap, in dit geval, want de muis, het bevat de coördinaten van de muis.Briljant!Dus hoe we de toegang tot, het?Nou, deze nieuwe materialen (dat wil zeggen de gebeurtenissen, reden waarom je kan raden) aangenomen, redrawavatar (), functioneren.Ja, maar we zijn nog niet geschreven, dus doe het nu maar.Dit is de code toe te voegen aan uw J 's dossier. Functie: drawavatar () {VAR gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); avatarimage.src = "foto' s /avatar. Papoea - Nieuw - Guinea"; gameCanvas. GetContext ("D"). Drawimage (avatarimage, wiskunde. (*) 100 100 (* * * * * * *), wiskunde.); gameCanvas. AddEventListener ("muis", redrawavatar);} functie redrawavatar (gebeurtenissen) {}, ah... Deze keer, we hebben deze definitie van de functie is een beetje anders: we zeggen in de gebeurtenissen die, tussen haakjes.Dit is omdat we verwachten dat de browser door een gebeurtenis die voorwerpen, onze nieuwe functie, net als toen we door middel van coördinatie, drawimage (), functionele, want we hebben hem een naam gegeven, en we toegang kunnen krijgen tot het voorwerp van de kenmerken en functies drawavatar () {VAR getElementById (gameCanvas = document "gameCanvas".); var avatarimage = nieuwe beeld (); avatarimage.src = "foto 's /avatar. Papoea - Nieuw - Guinea"; gameCanvas. GetContext ("D"). Drawimage (avatarimage, wiskunde, wiskunde. () × 100. () × 100); gameCanvas. AddEventListener ("muis", redrawavatar redrawavatar (functie);} Vertaling) (signalering (MouseEvent. X);}, test het. Je moet op het canvas voordat er wat gebeurt, omdat het de functie van binnen, we maWanneer de browser begonnen aandacht te besteden aan de muis, zal je merken dat, als de muis in de doek elementen, de dialoog alleen voorkomen.Je zou dat in een aantal vreemde dingen: het is te groot.Ik heb cijfers meer dan 900, zelfs als de breedte van het doek maar 400, want dit is, MouseEvent. X, zodat de positie van de pagina 's van de muis, de marge, maar niet op de rand van de foto' s.We kunnen het gebruik van uit de doeken, mouseevent.offsetx, aan de rand van de toegang tot en de locatie van de muis, functie: drawavatar () {VAR gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); avatarimage.src = "foto 's /avatar. Papoea - Nieuw - Guinea"; gameCanvas. GetContext ("D"). Drawimage (avatarimage, wiskunde, wiskunde. () × 100. () × 100); gameCanvas. AddEventListener ("muis", redrawavatar);} functie redrawavatar (gebeurtenissen) (signalering (MouseEvent. Offsetx);}, hoe beter.Dus, kortom, addeventlistener (), waardoor de browser, luister, voor bepaalde gebeurtenissen, zoals de beweging van de muis en een functie die deze gebeurtenis, is "gehoord".Het creëren van een nieuwe Navigator voorwerp (bijvoorbeeld gebeurtenissen), en door het functioneren, het is je hoofd een beetje moeilijk, maar maak je geen zorgen, we zullen het veel, dus krijg je het hangen.En je hoofd te bewegen, we hebben bijna beweging.In feite, stel ik voor dat je er een doen in je eigen hoofd van de muis in het lezen van een stap vooruit.Je kan dichtbij zijn.Is er een groot ding, haal je struikelen, hoewel het woord, var. - weet je, je kan een steno als "duurzame" gedefinieerd in functie is, dat betekent dat, als je dat wilt doen, en zei: drawavatar () {var, de functie van gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); avatarimage.src = "foto 's /avatar. Papoea - Nieuw - Guinea"; gameCanvas. GetContext ("D"). Drawimage (avatarimage, wiskunde, wiskunde. () × 100. () × 100); gameCanvas. AddEventListener ("muis", redrawavatar) De functie van redrawavatar (gebeurtenissen);} {gamecanvas.width = 400; alarm (MouseEvent. Offsetx);},... En het zal niet werken, want, gamecanvas, wat betekent dat, drawavatar ().Dus, als je het niet hebt voor de eerste keer, is er een andere weg, mijn code is hier als je je functie:, drawavatar () {VAR gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); avatarimage.src = "foto 's /de avatar. Papoea - Nieuw - Guinea"; getContext gameCanvas. ("D"). Drawimage (avatarimage, wiskunde, wiskunde. () × 100. () × 100); gameCanvas. AddEventListener ("muis", redrawavatar);} functie redrawavatar (gebeurtenissen) {VAR gamecanvas = documenten. GetElementById ("gameCanvas var avatarimage"); het nieuwe beeld (); avatarimage.src = = = = = = = "IMG /avatar. Papoea - Nieuw - Guinea"; gameCanvas. GetContext ("D"). Drawimage (avatarimage, mouseevent.offsetx, MouseEvent. Offsety);}, Dada!Oh, wacht, ik vergat het doek van de breedte en hoogte te wissen.COOL effect, maar laten we het nog eens proberen, functie: drawavatar () {VAR gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); avatarimage.src = "foto 's /avatar. Papoea - Nieuw - Guinea"; gameCanvas. GetContext ("D"). Drawimage (avatarimage (), wiskunde. 100), 100 (wiskunde. * * * * * * *); gameCanvas. AddEventListener ("muis", redrawavatar);} functie redrawavatar (gebeurtenissen) {VAR gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); avatarimage.src = "foto' s /avatar. Papoea - Nieuw - Guinea gamecanvas.width = 400; gameCanvas";. GetContext ("D"). Drawimage (avatarimage, mouseevent.offsetx, MouseEvent. Offsety);}, probeer het.Succes.Wacht, wat is dat?In een paar dagen, als je nog een keer zien je code, je bent waarschijnlijk vergeten wat het is.In het bijzonder, denk ik dat je vergeet waarom je het moet passen, gelukkig is er een manier om het me te herinneren, opmerkingen, kijk eens naar deze: drawavatar () {var, de functie van gamecanvas = documenten. GetElementById ("gameCanvas"); var avatarimage = nieuwe beeld (); avatarimage.src = "Foto 's /de avatar. Papoea - Nieuw - Guinea"; gameCanvas.

Learn HTML5 With This Simple Avoider Game Tutorial
Learn HTML5 With This Simple Avoider Game Tutorial
Learn HTML5 With This Simple Avoider Game Tutorial
Learn HTML5 With This Simple Avoider Game Tutorial



Previous:
Next Page: