Flash is 'n gewilde formaat vir blaaier -videospeletjies, soos webwerwe soos Newgrounds en Kongregate. Alhoewel die Flash -formaat geneig is om onderbenut te word in mobiele toepassings, is daar steeds baie kwaliteit speletjies wat met Flash gemaak word. Flash gebruik ActionScript, 'n taal wat maklik is om te leer en beheer bied oor voorwerpe op die skerm. Sien stap 1 hieronder om te leer hoe om 'n basiese Flash -speletjie te skep.
Stap
Deel 1 van 3: Aan die gang
Stap 1. Ontwerp die spel
Voordat u begin met kodering, moet u 'n ruwe idee van u spel skep. Flash is die beste geskik vir eenvoudige speletjies, dus fokus op die skep van speletjies met baie min spelmeganika. Definieer die genre en spelmeganika voordat u met die prototipe begin. Algemene flits speletjies sluit in:
- Eindelose hardloper: die spel skuif outomaties karakters. Spelers moet oor hindernisse spring of met die spel omgaan. Spelers het gewoonlik net een of twee beheeropsies.
- Vegters: die spel rol gewoonlik langs die kant. Spelers moet die vyand verslaan om vooruit te gaan. Die spelerkarakter het verskeie bewegings om die vyand te verslaan.
- Raaisels: Spelers moet raaisels oplos om elke vlak te klop. Van die styl om drie unieke voorwerpe soos Bejeweled bymekaar te bring, tot komplekse raaisels soos avontuurlike speletjies.
- RPG: Die spel fokus op karakterontwikkeling en vooruitgang. Spelers beweeg deur baie verskillende situasies sowel as verskillende soorte vyande. Die gevegsmeganika wissel baie, maar baie van hierdie tipes is op beurt gebaseer. RPG's is aansienlik moeiliker om te kodeer as eenvoudige aksiespeletjies.
Stap 2. Verstaan wat die voordele van flits is
Flash is die beste geskik vir 2D -speletjies. Flash kan gemaak word om 3D -speletjies te skep, maar dit is baie ingewikkeld en verg meer kennis. Byna elke suksesvolle Flash -speletjie het 'n 2D -formaat.
Flash -speletjies is ook die beste geskik vir vinnige sessies. Dit is omdat die meeste spelers speel as hulle min vrye tyd het, soos onderbrekings, wat beteken dat speletjies gewoonlik hoogstens 15 minute lank is
Stap 3. Maak kennis met die ActionScript3 (AS3) taal
Flash -speletjies is in AS3 geprogrammeer, en u moet basiese kennis hê van hoe dit werk om suksesvol te wees in die skep van speletjies. U kan eenvoudige speletjies skep met 'n basiese begrip van kode in AS3.
Daar is baie ActionScript -boeke beskikbaar op Amazon en ander winkels, asook 'n verskeidenheid tutoriale en gebeure op die internet
Stap 4. Laai Flash Professional af
Hierdie program is 'n bietjie duur, maar dit is baie goed om vinnig flitsprogramme te skep. Daar is verskeie ander programopsies, insluitend open source -opsies, maar dit is oor die algemeen minder versoenbaar of neem langer om dieselfde taak te voltooi.
Flash Professional is die enigste program wat u nodig het om speletjies te begin skep
Deel 2 van 3: Basiese speletjies skryf
Stap 1. Verstaan die basiese boustene van AS3 -kode
Die basisspel het verskillende kodestrukture. Daar is drie hoofonderdele aan die AS3 -kode:
-
Veranderlikes - Dit gaan oor hoe data gestoor word. Data kan getalle, woorde (snare), voorwerpe en meer wees. Veranderlikes word gedefinieer deur die var -kode en moet uit een woord bestaan.
var playerHealth: Number = 100; // "var" dui aan dat u 'n veranderlike definieer. // "playerHealth" is die veranderlike se naam. // "Nommer" is die datatipe. // "100" is die waarde wat aan die veranderlike toegeken word. // Alle reëls vir aksieskrif eindig met ";"
-
Gebeurtenishanteerder - gebeurtenishanteerder soek na sekere dinge wat gebeur het, en stel die res van die program in kennis. Dit is belangrik vir spelerinvoer en herhaalde kode. Gebeurtenishanteerders bel gewoonlik funksies.
addEventListener (MouseEvent. CLICK, swingSword); // "addEventListener ()" definieer 'n gebeurtenishanteerder. // "MouseEvent" is die kategorie invoer waarna geluister word. // ". CLICK" Is 'n gespesifiseerde gebeurtenis in die MouseEvent -kategorie. // "swingSword" is die funksie wat genoem word wanneer die gebeurtenis plaasvind.
-
Funksie - 'n stuk kode wat aan 'n sleutelwoord toegeken is en later genoem kan word. Funksies hanteer die meeste spelprogrammering, en 'n komplekse spel kan honderde funksies hê. Funksies kan in enige volgorde wees, want dit werk slegs as dit gebel word.
funksie swingSword (e: MouseEvent): leeg; {// Jou kode hier}} // "funksie" is die sleutelwoord wat aan die begin van elke funksie verskyn. // "swingSword" is die naam van die funksie. // "e: MouseEvent" is 'n bygevoegde parameter, wat aandui // dat die funksie van die gebeurtenisluisteraar gebel is. // ": void" is die waarde wat deur die funksie teruggestuur word. // As geen waarde teruggestuur word nie, gebruik: void.
Stap 2. Skep 'n voorwerp
ActionScript word gebruik om voorwerpe in Flash te beïnvloed. Om 'n speletjie te skep, moet u voorwerpe skep waarmee die spelers kan kommunikeer. Afhangende van die gids wat u lees, kan na voorwerpe sprites, akteurs of films verwys word. Vir hierdie eenvoudige spel, sal jy 'n reghoek skep.
- Maak Flash Professional oop. Skep 'n nuwe ActionScript 3 -projek.
- Klik op die gereedskapteken in die paneel Gereedskap. Hierdie paneel is moontlik op 'n ander plek, afhangende van die Flash Professional -opset. Teken 'n reghoek in die toneelvenster.
- Kies die reghoek met die keuringshulpmiddel.
Stap 3. Stel die eienskappe op die voorwerp
Kies die nuut gekose reghoek, gaan na die kieslys verander en kies "Skakel na simbool". U kan ook F8 as 'n kortpad druk. Gee die voorwerp 'n maklik herkenbare naam in die venster 'Skakel na simbool', byvoorbeeld 'vyand'.
- Soek die venster Eienskappe. Bo -aan die venster verskyn 'n leë teksveld met die naam "Voorbeeldnaam" wanneer die muis daaroor beweeg word. Gee dit dieselfde naam as toe jy dit in 'n simbool ('vyand') verander het. Dit skep 'n unieke naam vir interaksie via die AS3 -kode.
- Elke "gebeurtenis" is 'n aparte voorwerp wat deur die kode beïnvloed kan word. U kan gebeurtenisse wat verskeie kere geskep is, kopieer deur op die blad Biblioteek te klik en dit na die toneel te sleep. Elke keer as 'n gebeurtenis bygevoeg word, verander die naam daarvan om aan te dui dat die voorwerp apart is ("vyand", "vyand1", "vyand2", ens.).
- As u in 'n kode na 'n voorwerp verwys, gebruik die naam van die gebeurtenis, in hierdie geval 'vyand'.
Stap 4. Leer hoe u die eienskappe van 'n gebeurtenis kan verander
Sodra die gebeurtenis geskep is, kan u die eienskappe daarvan stel via AS3. Hiermee kan u voorwerpe rondbeweeg, die grootte daarvan verander, ens. U kan 'n eiendom aanpas deur die voorkoms in te tik, gevolg deur 'n periode ".", Dan gevolg deur die eiendom, gevolg deur die waarde:
- vyand.x = 150; Dit beïnvloed die posisie van vyandelike voorwerpe op die X -as.
- vyand.y = 150; Dit beïnvloed die posisie van vyandige voorwerpe op die Y -as. Die Y -as word vanaf die bokant van die toneel bereken.
- vyand.rotasie = 45; Draai vyandelike voorwerpe 45 ° kloksgewys.
- vyand.skaalX = 3; Strek die wydte van die vyandelike voorwerp met 'n veelvoud van 3. Die (-) teken sal die voorwerp omdraai.
- vyand.skaalY = 0.5; Verander die hoogte van die voorwerp na die helfte van die huidige hoogte.
Stap 5. Let op die trace () opdrag
Hierdie opdrag gee die huidige waarde van die gespesifiseerde voorwerp terug en is nuttig om te bepaal of alles werk soos dit moet. U sal waarskynlik nie die opdrag Trace in u finale kode insluit nie, maar dit kan nuttig wees om die bron van die mislukte kode op te spoor.
Stap 6. Bou die basisspel met behulp van die inligting hierbo
U het nou 'n basiese begrip van die kernfunksies. U kan 'n speletjie maak waar elke keer as u op 'n vyand klik, die grootte afneem totdat die vyand vernietig word
var vyandHP: Getal = 100; // Stel die vyand se HP (gesondheid) op 100 aan die begin van die spel. var playerAttack: Number = 10; // Stel die speler se hoeveelheid aanvalskrag in wanneer hy klik. vyand.addEventListener (MouseEvent. CLICK, attackEnemy); // Deur hierdie funksie direk by die vyandelike voorwerp te voeg, // kom hierdie funksie slegs voor as die voorwerp self // geklik word, en nie as dit op enige plek op die skerm klik nie. setEnemyLocation (); // Noem die volgende funksie om die vyand // op die skerm te plaas. Dit gebeur wanneer die spel begin. function setEnemyLocation (): void {vyand.x = 200; // Beweeg die vyand 200 pixels van die linkerkant van die skerm vyand.y = 150; // Beweeg die vyand 150 pixels van die bokant van die skerm af vyand.rotasie = 45; // Draai vyand 45 grade met die kloksgewys spoor ("vyand se x -waarde is", vyand.x, "en vyand se y -waarde is", vyand.y); // Toon die huidige posisie van die vyand om die bron van die fout te vind} funksie attackEnemy (e: MouseEvent): void // Skep 'n aanvalfunksie wanneer op die vyand geklik word {vyandHP = vyandHP - spelerAanval; // Trek aanvalwaarde af van HP -waarde, // Genereer nuwe HP -waarde. vyand.skaalX = vyandHP / 100; // Verander die breedte op grond van die nuwe HP -waarde. // Die waarde word gedeel deur 100 en dan omgeskakel na 'n desimale. vyand.skaalY = vyandHP / 100; // Verander hoogte op grond van nuwe HP -waardespoor ("Vyande het", vyandHP, "HP oorblywende"); // Toon hoeveel HP die vyand oor het}
Stap 7. Probeer dit
Sodra u gekodeer het, kan u hierdie nuwe speletjie toets. Klik op die Control -kieslys en kies Test Movie. Die spel begin, en u kan op 'n vyandelike voorwerp klik om die grootte daarvan te verander. Die opsporingsuitset word in die uitvoervenster vertoon.
Deel 3 van 3: Leer gevorderde tegnieke
Stap 1. Leer hoe pakkette werk
ActionScript is op Java gebaseer en gebruik 'n baie soortgelyke pakketstelsel. Met pakkette kan u veranderlikes, konstantes, funksies en ander inligting in aparte lêers stoor en dan hierdie lêers in die program invoer. Dit is veral handig as u pakkette wil gebruik wat ander mense ontwikkel het, wat dit makliker maak om speletjies te bou.
Soek 'n gids op Wikihow vir meer inligting oor hoe pakkette in Java werk
Stap 2. Bou die projekmap
As u 'n speletjie skep wat beelde en klankgrepe bevat, skep 'n vouerstruktuur in die spel. U sal dit makliker vind om verskillende soorte elemente te stoor, asook om verskillende pakkette te stoor om te bel.
- Skep 'n basismap vir u projek. Skep in die basismap 'n "img" -vouer vir alle kunsbates, 'n "snd" -vouer vir alle klankbates en 'n "src" -vouer vir alle spel- en kodepakkette.
- Skep 'n "Speletjies" -map in die "src" -map om die Constants -lêer te stoor.
- Hierdie spesifieke struktuur is nie nodig nie, maar dit sal dit makliker maak om die werk van alle materiale te organiseer, veral vir groter projekte. Vir die eenvoudige spel wat hierbo beskryf word, hoef u geen kaarte te skep nie.
Stap 3. Voeg klank by die spel
Speletjies sonder klank of musiek sal spelers vinnig verveel. U kan klank by voorwerpe voeg deur die Gereedskap vir lae te gebruik.
Stap 4. Skep die Constants -lêer
As u spel baie waardes het wat dieselfde sal bly gedurende die spel, kan u 'n Constants -lêer skep om dit alles op een plek te versamel, sodat dit maklik opgeroep kan word. Konstante kan waardes insluit soos swaartekrag, spelsnelheid en ander waardes wat herhaaldelik genoem moet word.
-
As u 'n Constants -lêer geskep het, plaas dit in 'n gids in die projek en voer dit dan as 'n pakket in. Veronderstel dat u 'n Constants.as -lêer skep en dit in die speletjiesmap plaas. Gebruik die volgende kode om dit in te voer:
pakket {import Game.*; }
Stap 5. Kyk na ander mense se spel
Alhoewel baie ontwikkelaars hul spelkode nie bekend sal maak nie, is daar 'n verskeidenheid tutoriaalprojekte en ander open source -projekte waarmee u kode kan sien en met speletjie -voorwerpe kan omgaan. Dit is 'n uitstekende manier om 'n verskeidenheid gevorderde tegnieke te leer wat u spel kan help om uit te steek.