Skep 'n flitsspeletjie

Flash is `n gewilde formaat vir blaaierspeletjies soos dié wat op werwe soos Newgrounds en Kongregate gevind word. Terwyl die Flash-formaat geleidelik minder gebruik word deur die groeiende aantal mobiele toepassings, word baie kwaliteitspeletjies steeds daarmee gemaak. Flash gebruik ActionScript, `n maklik om te leer taal waarmee jy voorwerpe op jou skerm kan manipuleer. Hierdie wikiHow-artikel sal jou leer hoe om `n eenvoudige flitsspeletjie te maak.

Trappe

Deel 1 van 3: Begin die proses

Prent getiteld 381698 1
1. ontwerp jou speletjie. Voordat jy begin kodeer, is dit `n goeie idee om `n rowwe idee te hê van wat die bedoeling van jou speletjie is. Flits is die beste geskik vir eenvoudige speletjies, so fokus op die skep van `n speletjie met net `n paar bewegings wat die speler kan maak. Probeer om `n idee van die genre en animasies te hê voordat jy prototipeer. Sien hierdie gids vir meer inligting oor spelontwikkelingsbeplanningstadiums. Flitsspeletjies word dikwels soos volg gestruktureer:
  • Eindelose hardlopers: In hierdie speletjies word `n karakter outomaties geskuif en dit is aan die speler om oor hindernisse te spring of op ander maniere met die speletjie om te gaan. Die speler het dikwels net een of twee opsies wanneer dit by kontroles kom.
  • Klop hulle van Brawlers: Dit is gewoonlik side-scrollers waar die speler vyande moet verslaan om te vorder. Die speler se karakter het dikwels verskeie bewegingsopsies wat uitgevoer kan word om vyande te verslaan.
  • Legkaarte: Hierdie speletjies vra die speler om raaisels op te los om een ​​vlak te vorder. Hulle kan wissel van Match-3-styl. soos Bejeweled, tot meer komplekse raaisels soos dié wat algemeen in avontuurspeletjies voorkom.
  • RPG`s: Hierdie speletjies fokus op karakterontwikkeling en vordering, wat vereis dat die speler verskeie omgewings met `n verskeidenheid vyande moet navigeer. Moontlike spelmeganika verskil baie van RPG tot RPG, maar baie van hulle is beurte-gebaseerd. RPG`s kan aansienlik moeiliker wees om te kodeer as `n eenvoudige aksiespeletjie.
Prent getiteld 381698 2
2. Weet waarmee Flash uitblink. Flash is die beste geskik vir 2D-speletjies. Dit is moontlik om 3D-speletjies in Flash te skep, maar dit is baie gevorderd en vereis aansienlike kennis van die programmeertaal. Byna elke suksesvolle speletjie in Flash is 2D.
Flitsspeletjies is ook die beste geskik vir kort sessies. Dit is omdat die meeste mense wat Flash-speletjies speel dit doen wanneer hulle `n bietjie vrye tyd oor het, soos tydens pouses, wat beteken dat sessies gewoonlik nie langer as 15 minute duur nie.
Prent getiteld 381698 3
3. Maak jouself vertroud met ActionScript3 (AS3). Flitsspeletjies is in AS3 geprogrammeer, en jy het basiese kennis nodig van hoe dit werk om `n speletjie suksesvol te maak. Jy kan `n eenvoudige speletjie maak met `n rudimentêre begrip van kodering in AS3.
Daar is verskeie boeke oor ActionScript beskikbaar op Bol.com en ander aanlyn boekwinkels, bykomend tot `n magdom tutoriale en voorbeelde.
Prent getiteld 381698 4
4. Laai Flash Professional af. Hierdie program kos geld, maar dit is die beste manier om vinnig Flash-programme te skep. Ander opsies is beskikbaar, insluitend oopbronsagteware, maar hulle is dikwels nie versoenbaar genoeg nie of neem langer om dieselfde take te voltooi.
Flash Professional is die enigste program wat jy nodig het om Flash-speletjies te skep.

Deel 2 van 3: Skryf `n eenvoudige speletjie

Prent getiteld 381698 5
1. Verstaan ​​die basiese boublokke van AS3-kode. Wanneer jy `n basisspeletjie skep, is daar verskeie kodestrukture wat jy sal gebruik. Alle AS3-kode bestaan ​​uit drie hoofdele:
  • Veranderlikes – stoor jou data. Data kan bestaan ​​uit getalle, woorde (stringe), voorwerpe en meer. Veranderlikes word deur die kode gedefinieer var en moet uit een woord bestaan.
var playerHealth:Number = 100;// `var` beteken dat jy `n veranderlike definieer. // `playerHealth` is die naam van die veranderlike. // `Getal` is die tipe wat gegee word. // `100` is die waarde van die veranderlike. // Alle actionscript-reëls eindig met `n kommapunt (;)
Gebeurtenishanteerders – Gebeurtenishanteerders soek spesifieke dinge wat gebeur, en vertel dan die res van die program. Dit is noodsaaklik vir spelerinvoer en herhaling van kode. Gebeurtenishanteerders roep gewoonlik funksies.
addEventListener(MouseEvent.KLIK, swingSword); // `addEventListener()` definieer die gebeurtenishanteerder. // `MouseEvent` is die kategorie-inskrywing waarvoor wag. //`.KLIK` is die spesifieke gebeurtenis in die MouseEvent-kategorie. // `swingSword` is die funksie wat geroep sal word wanneer die gebeurtenis plaasvind.
  • Funksie – Dele van die kode toegeken aan `n sleutelwoord wat genoem kan word. Funksies hanteer die meeste van jou speletjie se programmering, en komplekse speletjies kan honderde funksies hê, terwyl eenvoudiger speletjies `n paar funksies benodig. Hulle kan in enige volgorde wees aangesien hulle net werk wanneer hulle gebel word.
    funksie swingSword (e:MouseEvent):void; { //Jou kode gaan hierheen }// `funksie` is die sleutelwoord wat aan die begin van elke funksie vertoon word. // `swingSword` is die naam van die funksie. // `e:MouseEvent` is `n bykomende parameter, wat aandui dat die funksie // deur die `gebeurtenisluisteraar` geroep word. // `:void` is die waarde wat deur die funksie teruggestuur word. As geen // waarde teruggestuur word nie, gebruik `:void`.
    Prent getiteld 381698 6
    2. Skep `n voorwerp. Gebruik ActionScript om voorwerpe in Flash te skep. Om `n speletjie te maak, moet jy voorwerpe skep waarmee die speler interaksie kan hê. Afhangende van hoe-om-gidse wat jy lees, kan daar na voorwerpe verwys word as sprites, akteurs of flieksnitte. Vir hierdie eenvoudige speletjie, maak `n reghoek.
  • Maak Flash Professional oop as jy dit nog nie het nie. Skep `n nuwe ActionScript 3-projek.
  • Klik op die reghoek tekeninstrument in die gereedskappaneel. Hierdie venster kan op verskillende plekke wees, afhangende van hoe Flash Professional opgestel is. Teken `n reghoek in jou toneelvenster.
  • Kies die reghoek met die Pick-instrument.
    Prent getiteld 381698 7
    3. Ken eienskappe aan die voorwerp toe. Met jou geskepte reghoek gekies, maak die Redigeer-kieslys oop en kies `Skakel na simbool`. Jy kan ook die sneltoets druk F8. In die `Skakel na simbool`-venster, gee die voorwerp `n maklik herkenbare naam, soos `vyand`.
  • Vind die Eienskappe-venster. Aan die bokant van die venster sal jy `n leë teksveld gemerk "Instance Name" sien wanneer jy daaroor beweeg. Gee dit dieselfde naam as die simbool ("vyand"). Dit skep `n unieke naam wat via AS3-kode gebruik kan word.
  • Elke `instansie` is `n aparte objek wat deur kode beïnvloed kan word. Jy kan die gevalle wat reeds geskep is verskeie kere kopieer deur op die Biblioteek-oortjie te klik en die instansie na die toneel te sleep. Wanneer jy `n instansie byvoeg, sal die naam daarvan verander word om aan te dui dat dit `n aparte voorwerp is (`vyand`, `vyand1`, `vyand2`, ens.).
  • Wanneer u na voorwerpe in die kode verwys, hoef u slegs die instansienaam te gebruik (in hierdie geval `vyand`).
    Beeld getiteld 381698 8
  • 4. Leer hoe om die eienskappe van `n instansie te verander. Sodra jy `n instansie geskep het, kan jy sy eienskappe met AS3 verander. Byvoorbeeld, jy kan die voorwerp om die skerm beweeg, die grootte daarvan verander, ens. Jy kan eienskappe verander deur die instansienaam in te tik, gevolg deur `n punt, gevolg deur die eiendom, gevolg deur die waarde:
  • vyand.x = 150; Dit beïnvloed die posisie van die vyandige voorwerp op die X-as.
  • vyand.y = 150; Dit beïnvloed die posisie van die vyandige voorwerp op die y-as. Die y-as word vanaf die bokant van die toneel bereken.
  • vyand.rotasie = 45; Draai die vyandige voorwerp 45° kloksgewys.
  • vyand.skaalX = 3; Rek die vyandige voorwerp in die breedte met `n faktor van 3. `n Negatiewe waarde sal die voorwerp omkeer.
  • vyand.skaalY = 0.5; Druk die voorwerp plat tot die helfte van die hoogte.
    Prent getiteld 381698 9
  • 5. Doen navorsing oor die opdrag roete(). Hierdie opdrag gee die huidige waardes van spesifieke voorwerpe terug en is nuttig om te bepaal of alles verloop soos dit moet. U sal waarskynlik nie die spooropdrag in u finale kode insluit nie, maar dit is nuttig vir ontfouting.
    Prent getiteld 381698 10
    6. Skep `n eenvoudige speletjie deur die bogenoemde inligting te gebruik. Noudat jy `n bietjie begrip van die kernkenmerke het, kan jy `n speletjie skep waar die vyand grootte verander elke keer as jy daarop klik totdat die vyand se gesondheid opraak.
    var enemyHP:Getal = 100; // stel die vyand se HP (gesondheid) aan die begin op 100. var spelerAanval:Getal = 10; // stel die aanvalkrag van die spelers op elke klik.vyand.addEventListener(MouseEvent.KLIK, val vyand aan); // Deur hierdie funksie direk aan die vyandelike voorwerp te koppel, // sal die funksie slegs uitgevoer word wanneer die voorwerp self geklik word // in plaas daarvan om enige plek op die skerm te klik.stelVyandligging(); // Dit roep die volgende funksie om die vyand // op die skerm te plaas. Dit gebeur wanneer die speletjie begin.funksie stelVyandligging ():void { vyand.x = 200; // skuif die vyand 200 pixels van die linkerkant van die skerm vyand.y = 150; // skuif die vyand 150 pixels af vanaf die bokant van die skerm vyand.rotasie = 45; // draai die vyand 45 grade kloksgewys spoor(`vyand se x-waarde is`, vyand.x, `en vyand se y-waarde is`, vyand.y); // wys die huidige posisie van die vyand vir ontfouting }function attackEnemy (e:MouseEvent):void // Dit skep die aanvalfunksie wanneer die vyand geklik word { enemyHP = enemyHP - playerAttack; // Trek die aanvalwaarde van die HP-waarde af,// wat lei tot die nuwe HP-waarde. vyand.scaleX = vyand HP/100; // Verander die breedte gebaseer op die nuwe HP waarde. // Dit word deur 100 gedeel om dit `n desimale te maak. vyand.skaalY = vyand HP/100; // Verander die hoogte gebaseer op die nuwe HP-waardespoor(`Die vyand het`, enemyHP, `HP links`); //Dui aan hoeveel HP die vyand oor het }
    Prent getiteld 381698 11
    7. Probeer dit. Sodra jy die kode geskep het, kan jy jou nuwe speletjie toets. Klik op die kontroles-kieslys en kies Toets film. Jou speletjie sal begin, en jy kan op die vyandige voorwerp klik om die grootte daarvan te verander. Jou spooruitset sal in die Uitvoer-venster vertoon word.

    Deel 3 van 3: Aanleer van gevorderde tegnieke

    Beeld getiteld 381698 12
    1. Leer hoe pakkette werk. ActionScript is gebaseer op Java en gebruik `n soortgelyke pakketstelsel. Pakkette laat jou toe om veranderlikes, konstantes, funksies en ander inligting in aparte lêers te stoor, en dan daardie lêers in jou program in te voer. Dit is veral nuttig as jy `n pakket wil gebruik wat iemand anders ontwikkel het, wat jou speletjie makliker maak om te ontwikkel.
  • Sien Hierdie artikel vir meer inligting oor hoe pakkette in Java werk.
  • Prent getiteld 381698 13
    2. Skep jou projek dopgehou. As jy `n speletjie met veelvuldige beelde en klankgrepe maak, benodig jy `n vouerstruktuur vir jou speletjie. Dit maak dit maklik om die verskillende speletjie-elemente te stoor, sowel as die verskillende pakke wat jy wil oproep.
  • Skep `n basislêergids vir jou projek. In die tuisvouer is `n `img`-lêergids vir al die beeldmateriaal wat jy gebruik, `n `snd`-lêergids vir al die oudiomateriaal, en `n `src` vir al jou pakkette en kode.
  • Skep `n `Game`-lêergids in die `src`-lêergids om jou konstante-lêer te stoor.
  • Hierdie spesifieke struktuur is nie nodig nie, maar dit is `n maklike manier om jou werk en materiaal te organiseer, veral vir groter projekte. Vir die eenvoudige speletjie soos hierbo verduidelik, het jy nie kaarte nodig nie.
    Prent getiteld 381698 14
    3. Voeg klanke by jou speletjie. `n Speletjie sonder klank of musiek word vinnig vervelig vir die speler. Jy kan klank by Flash-voorwerpe voeg deur die Lae-instrument te gebruik. Kyk na instruksies vir meer inligting.
    Prent getiteld 381698 15
  • 4. Skep `n lêer vir die konstantes. As jou speletjie baie waardes het wat deur die hele speletjie dieselfde bly, kan jy `n lêer skep om hierdie konstantes op een plek te stoor vir maklike toegang. Konstante kan waardes wees soos swaartekrag, spelerspoed en enige ander waarde wat jy dalk herhaaldelik moet bel.
  • Wanneer jy `n konstante-lêer skep, moet dit in `n vouer in jou projek geplaas word en dan as `n pakket ingevoer word. Byvoorbeeld, kom ons sê jy het `n konstante.as lêer en plaas dit in jou speletjiegids. Gebruik die volgende kode om dit in te voer:
    pakket { import Game.*; }
    Beeld getiteld 381698 16
  • 5. Kyk na ander mense se speletjies. Alhoewel baie ontwikkelaars nie die kode vir hul speletjies sal openbaar nie, is daar verskeie projektutoriale en ander oop projekte wat jou toelaat om die kode te hersien en te sien hoe dit met speletjie-voorwerpe in wisselwerking tree. Dit is `n goeie manier om `n paar van die meer gevorderde tegnieke te leer wat kan help om jou spel te onderskei.

    Оцените, пожалуйста статью