Paano gumawa ng isang flash game

May -Akda: Sara Rhodes
Petsa Ng Paglikha: 13 Pebrero 2021
I -Update Ang Petsa: 1 Hulyo 2024
Anonim
Let’s make 16 games in C++: TETRIS
Video.: Let’s make 16 games in C++: TETRIS

Nilalaman

Ang Flash ay isang tanyag na format para sa mga laro na tumatakbo sa mga browser. Bagaman nawawala ang format na ito sa mga mobile application, maraming magagandang laro ang nakasulat sa format na ito. Gumagamit ang Flash ng ActionScript, isang madaling matutunan na wika ng programa na nagbibigay-daan sa iyo upang makontrol ang mga bagay sa screen.

Mga hakbang

Bahagi 1 ng 3: Pagsisimula

  1. 1 Lumikha ng isang laro (storyline nito) bago ka magsimulang mag-coding. Gumagawa ang Flash ng mga simpleng laro, kaya pumili ng isang uri ng laro at pag-isipan ang isang konsepto. Basahin ang artikulong Paano gumawa ng laro sa computer. Kabilang sa mga pangunahing genre ang:
    • Walang katapusang pagtakbo. Sa mga ganitong laro, awtomatikong gumagalaw ang tauhan, at gagabayan lamang siya ng manlalaro at tumalon sa mga hadlang (o kung hindi man nakikipag-ugnay sa laro).
    • Nakikipaglaban. Sa mga nasabing laro, dapat talunin ng pangunahing tauhan ang mga kaaway sa walang katapusang laban / laban.
    • Mga puzzle. Larong puzzle. Saklaw ang mga ito mula sa pinakasimpleng mga puzzle (pagkolekta ng tatlong magkatulad na bola) hanggang sa mga kumplikadong puzzle na bumubuo sa batayan ng mga larong pakikipagsapalaran.
    • RPG. Sa mga nasabing laro, kinakailangang paunlarin ang pangunahing tauhan (kanyang mga kasanayan, hitsura, karakter) upang makapaglaban sa iba`t ibang kalaban. Ang RPG game code ay mas kumplikado kaysa sa pinakasimpleng game code.
  2. 2 Ang Flash ay mas angkop para sa paglikha ng 2D (2D) na mga laro. Maaari ka ring lumikha ng mga 3D na laro (three-dimensional) dito, ngunit para dito kailangan mong malaman nang mahusay ang wika ng programa at iba pang mga advanced na diskarte. Halos lahat ng mga tanyag na Flash na laro ay 2D na laro.
    • Ang mga laro ng flash ay pinakaangkop para sa mga panandaliang sesyon sa paglalaro sapagkat nilalaro ang mga ito kapag may libreng oras (hindi hihigit sa 15 minuto).
  3. 3 Maging pamilyar sa wika ng programa ng ActionScript3 (AS3) para sa pagsusulat ng mga larong Flash. Maaari kang lumikha ng isang simpleng laro na may pangunahing kaalaman sa AS3.
    • Mayroong maraming mga aklat na ActionScript na magagamit sa Amazon at iba pang mga tindahan, kasama ang maraming mga tutorial at halimbawa sa online.
  4. 4 Mag-download ng Flash Professional. Ito ay isang bayad, ngunit ang pinakamahusay na programa kung saan nilikha ang mga laro ng Flash. Mayroong iba pang mga katulad na programa, kabilang ang mga libre, ngunit madalas ay kulang sila sa pagiging tugma o mas matagal ka upang makamit ang parehong mga layunin.
    • Ang Flash Professional ay ang tanging programa na kailangan mo upang lumikha ng isang laro.

Bahagi 2 ng 3: Paggawa ng Pinakasimpleng Laro

  1. 1 Maunawaan ang mga pangunahing istraktura ng AS3 code. Mayroong tatlong pangunahing bahagi ng anumang AS3 code:
    • Mga variable. Nag-iimbak sila ng data (bilang, teksto, object, at marami pang iba). Ang mga variable ay tinukoy ng code var at sa isang salita.

      var playerHealth: Bilang = 100; // "var" - tinutukoy mo ang isang variable. // "playerHealth" ang pangalan ng variable. // "Number" ay isang uri ng data (numeric dito). // "100" ang halagang itinalaga sa variable. // Anumang linya ng AS3 code ay nagtatapos sa ";"

    • Mga handler ng kaganapan. Naghahanap sila ng ilang mga kaganapan na kailangang maipatupad at iulat ito sa iba pang mga bahagi ng programa. Ito ay kinakailangan upang ipasok ang player at ulitin ang code. Karaniwan, ang mga handler ng kaganapan ay tumutukoy sa mga pagpapaandar.

      addEventListener (MouseEvent.CLICK, swingSword); // "addEventListener ()" - kahulugan ng isang handler ng kaganapan. // "MouseEvent" ay ang kategorya ng input na inaasahang naisakatuparan. // ".CLICK" ay isang tukoy na kaganapan sa kategorya ng MouseEvent. // "swingSword" ay isang pagpapaandar na na-trigger kapag ang kaganapan ay naisakatuparan.

    • Mga pagpapaandar. Mga seksyon ng programa na tinukoy ng isang keyword; tinutukoy sila habang umuusad ang programa. Maaaring maglaman ang kumplikadong code ng laro ng daan-daang mga pag-andar, habang ang simpleng code ng laro ay maaaring maglaman lamang ng kaunti. Maaaring isaayos ang mga pagpapaandar sa anumang pagkakasunud-sunod, dahil tatakbo lamang ito kapag tinawag sila.

      pag-andar swingSword (e: MouseEvent): walang bisa; Ang {// Code} // "function" ay isang keyword na ipinasok sa simula ng anumang pagpapaandar. // "swingSword" ang pangalan ng pagpapaandar. // "e: MouseEvent" ay isang opsyonal na parameter na nagpapahiwatig na // tatawagan ng handler ng kaganapan ang pagpapaandar. // ": void" ay ang halagang ibinalik ng pagpapaandar. // Kung walang naibalik na halaga, gamitin ang: walang bisa.

  2. 2 Lumikha ng mga bagay kung saan makikipag-ugnay ang manlalaro. Kasama sa mga object ang mga sprite, character, o video clip. Sa aming simpleng halimbawa ng laro, lilikha ka ng isang rektanggulo.
    • Simulan ang Flash Professional. Lumikha ng isang bagong proyekto ng ActionScript 3.
    • Sa toolbar, i-click ang tool na Rectangle. Maaaring lumitaw ang panel na ito sa iba't ibang mga lokasyon depende sa iyong pagsasaayos ng Flash Professional. Gumuhit ng isang rektanggulo sa window ng Eksena.
    • Piliin ang rektanggulo gamit ang tool na Pinili.
  3. 3 Itakda ang mga katangian ng bagay. Upang magawa ito, buksan ang menu na "Baguhin" at piliin ang "I-convert sa Symbol" (o pindutin ang F8). Sa window ng I-convert sa Simbolo, bigyan ang bagay ng isang madaling makilala pangalan, tulad ng kaaway.
    • Hanapin ang window ng Properties. Sa tuktok ng window ay may walang laman na patlang ng teksto na may label na "Sample Name" (kung pinapasadya mo ang patlang na ito). Ipasok ang parehong pangalan na ipinasok mo kapag nagko-convert ng object sa isang simbolo (sa aming halimbawa, "kaaway"). Lilikha ito ng isang natatanging pangalan na maaaring magamit sa AS3 code.
    • Ang bawat "sample" ay isang hiwalay na bagay na nakasalalay sa code. Maaari mong kopyahin ang nilikha na "mga sample"; upang gawin ito, i-click ang "Library" nang maraming beses at i-drag ang "sample" sa "yugto". Sa tuwing idaragdag ang isang "sample", magbabago ang pangalan nito ("kalaban", "kaaway1", "kaaway2" at iba pa).
    • Kapag nag-refer ka sa isang bagay sa code, gamitin lamang ang pangalang "sample" (sa aming halimbawa, "kaaway").
  4. 4 Ang pagbabago ng mga katangian ng sample. Matapos likhain ang sample, maaari mong baguhin ang mga katangian nito, halimbawa, baguhin ang laki. Upang gawin ito, ipasok ang pangalan ng sample, pagkatapos ay ".", Pagkatapos ang pangalan ng pag-aari, at pagkatapos ang halaga:
    • kalaban.x = 150; Itinatakda ang posisyon ng bagay ng kaaway kasama ang x-axis.
    • kalaban.y = 150; Itinatakda ang posisyon ng "kalaban" na bagay sa kahabaan ng Y axis (ang pinagmulan ng axis Y ay nakalagay sa tuktok na punto ng "eksena").
    • kalaban.paggaganyak = 45; Paikutin ang object ng kaaway 45 ° pakaliwa.
    • kalaban.scaleX = 3; Naaunat ang "kalaban" na bagay sa lapad sa pamamagitan ng isang kadahilanan ng 3. Ang isang negatibong halaga ay i-flip ang bagay.
    • kalaban.iskalY = 0.5; Gagupitin ang kalahati ng taas ng bagay.
    • .
  5. 5 Galugarin ang utos bakas (). Ibinabalik nito ang kasalukuyang mga halaga para sa mga tukoy na bagay at kinakailangan upang matukoy na ang lahat ay gumagana nang tama. Hindi mo dapat isama ang utos na ito sa code ng pinagmulan ng laro, ngunit kakailanganin mo ito upang i-debug ang programa.
  6. 6 Lumikha ng isang pangunahing laro gamit ang impormasyon sa itaas. Sa aming halimbawa, lilikha ka ng isang laro kung saan babaguhin ng kaaway ang laki sa tuwing mag-click sa kanya, hanggang sa maubusan siya ng kalusugan.

    var kaawayHP: Bilang = 100; // Itinatakda ang laki ng kalusugan ng kalaban (100 sa simula ng laro). var playerAttack: Bilang = 10; // Itinatakda ang lakas ng pag-atake ng manlalaro kapag nag-click sa isang kaaway. kaaway.addEventListener (MouseEvent.CLICK, attackEnemy); // Ang pagkilos ng pagpapaandar na ito ay nakadirekta nang direkta sa "kalaban" na bagay, // iyon ay, ang pag-andar ay na-trigger lamang kapag na-click ang bagay, // at hindi sa ibang lugar sa screen. setEnemyLocation (); // Ilalagay ang kaaway sa screen. // Tumatakbo sa pinakadulo simula ng laro. set setEnemyLocation (): walang bisa {kaaway.x = 200; // Inililipat ang kaaway sa kanang 200 pixel mula sa kaliwang bahagi ng screen. kalaban.y = 150; // Inililipat ang kaaway ng 150 pixel mula sa tuktok ng screen. kalaban.paggaganyak = 45; // Paikutin ang kaaway ng 45 degree na pakaliwa. bakas ("ang x-halaga ng kaaway ay", kaaway.x, "at ang halaga ng kaaway ay", kaaway.y); // Ipinapakita ang kasalukuyang posisyon ng kaaway para sa pag-debug. } function attackEnemy (e: MouseEvent): walang bisa // Lumilikha ng isang pagpapaandar upang ilarawan ang isang atake kapag na-click ang isang kaaway. {kaawayHP = kaawayHP - playerAttack; // Binabawas ang lakas ng pag-atake ng manlalaro mula sa halaga ng kalusugan ng kalaban. // Ang resulta ay isang bagong halaga para sa kalusugan ng kaaway. kaaway.scaleX = kaawayHP / 100; // Binabago ang lapad batay sa bagong kalusugan ng kalaban. // Ang halagang ito ay hinati sa 100 upang makakuha ng isang decimal.kaaway.scaleY = kaawayHP / 100; // Binabago ang taas batay sa bagong halaga ng kalusugan ng kaaway. bakas ("Ang kaaway ay may", kaawayHP, "HP kaliwa"); // Nagpapakita ng nawalang kalusugan. }

  7. 7 Simulan ang laro. Buksan ang menu ng Pamahalaan at piliin ang Pagsubok. Magsisimula ang iyong laro; mag-click sa isang kaaway upang baguhin ang laki nito. Ipapakita ang impormasyon ng pag-debug sa window ng Output.

Bahagi 3 ng 3: Mga advanced na diskarte

  1. 1 Mga pakete. Ang mga ito (sa magkakahiwalay na mga file) ay nag-iimbak ng mga variable, pare-pareho, pagpapaandar at iba pang impormasyon; maaari kang mag-import ng mga pakete sa iyong programa. Sa pamamagitan ng paggamit ng isang pakete na nilikha ng iba, lubos mong mapapadali ang iyong gawain ng paglikha ng isang programa.
    • Basahin ang artikulong ito para sa mga detalye sa kung paano gumagana ang mga pakete.
  2. 2 Lumikha ng mga folder ng proyekto. Kung lumilikha ka ng isang laro na may maraming mga imahe at mga sound file, lumikha ng maraming mga folder. Papayagan ka nitong hindi malito sa iba't ibang mga elemento, pati na rin ang mga pakete ng tindahan sa mga naaangkop na folder.
    • Lumikha ng isang base folder ng proyekto. Sa base folder kinakailangan upang lumikha ng isang subfolder na "IMG" kung saan maiimbak ang mga imahe, isang subfolder na "SND" para sa mga file ng tunog at isang subfolder na "SRC" na may mga pakete at game code.
    • Lumikha ng isang folder ng Laro sa folder ng SRC para sa Constants file.
    • Ang istraktura ng folder na ito ay opsyonal; ito ay ibinigay bilang isang halimbawa ng kung paano ayusin at ayusin ang mga elemento ng iyong proyekto (ito ay lalong mahalaga sa kaso ng malalaking proyekto). Kung lumilikha ka ng isang simpleng laro (tulad ng sa aming halimbawa), hindi mo kailangang lumikha ng anumang mga folder.
  3. 3 Magdagdag ng tunog sa iyong laro. Ang pag-play nang walang tunog o musika ay mabilis na makakain ng anumang manlalaro. Maaari kang magdagdag ng tunog gamit ang tool na Mga Layer. Maghanap para sa karagdagang impormasyon tungkol dito sa Internet.
  4. 4 Lumikha ng file na "Patuloy". Kung mayroon kang maraming mga Constant sa iyong laro na hindi nagbabago sa buong laro, maaari kang lumikha ng isang "Patuloy" na file upang maiimbak ang lahat ng mga Constant dito. Ang patuloy na mga halaga ay ang lakas ng akit, ang bilis ng tauhan, at iba pa.
    • Kung lumilikha ka ng isang "Patuloy" na file, ilagay ito sa naaangkop na folder ng proyekto at pagkatapos ay i-import ito sa pakete. Halimbawa, lumikha ka ng isang Constants.as na file at ilagay ito sa folder ng laro. Upang mai-import ito, kailangan mong gamitin ang sumusunod na code:

      package {import Game. *; }

  5. 5 Suriin ang mga laro mula sa iba pang mga developer. Maraming mga tagabuo ang hindi isiwalat ang mga code ng kanilang mga laro, ngunit maraming mga tutorial at iba pang mga proyekto kung saan maaari mong tingnan ang code. Ito ay isang mahusay na paraan upang malaman ang ilan sa mga pinakamahusay na diskarte upang matulungan kang lumikha ng isang mahusay na laro.