1. Paano magsulat ng mga laro sa JavaRush
Tulad ng naiintindihan mo na, ang JavaRush ay may natatanging pagkakataon - pagsusulat ng mga laro . Ang mga ito ay mas malaki kaysa sa mga ordinaryong gawain, at mas kawili-wili. Ito ay kagiliw-giliw na hindi lamang upang isulat ang mga ito, ngunit din, um, upang subukan ang mga ito. Kung alam mo kung ano ang ibig naming sabihin ;) Ang trabaho sa tanggapan ng JavaRush ay literal na naparalisa sa loob ng ilang araw noong sinimulan namin ang yugto ng pagsubok ng mga gawain sa laro :) Ang bawat gawain sa laro ay isang proyekto: isang malaking gawain na may dalawang dosenang mga subtask. Habang isinusulat mo ang laro, kakailanganin mong kumpletuhin ang mga ito nang sunud-sunod. Kapag tapos na ang huling subtask, handa na ang iyong laro. Gagamit ito ng napakasimpleng game engine na tinatawag na JavaRush . Ang pagtatrabaho dito ay hindi mas mahirap kaysa sa console. Ang isang paglalarawan ng engine ng laro at mga halimbawa ng pagtatrabaho dito ay matatagpuan sa dokumentong ito .2. Mga kakayahan ng makina ng laro
Ang playing field ay hinati ng game engine sa mga cell. Ang minimum na laki ay 3x3, ang maximum ay 100x100. Ang bawat cell ay maaaring lagyan ng kulay ng isang tiyak na kulay at ang ilang mga teksto ay maaaring nakasulat dito. Gayundin, para sa bawat cell ang laki at kulay ng teksto ay nakatakda. Binibigyang-daan ka ng makina na magsulat ng mga pamamaraan ng handler para sa mga kaganapan tulad ng "mga pagpindot sa pindutan ng mouse" at "pagpindot sa keyboard". Ang isa pang kawili-wiling bagay na dapat tandaan ay ang kakayahang magtrabaho kasama ang isang timer. Matututo ka pa tungkol dito sa seksyong "Paggawa gamit ang timer." Ang "halatang makina" na ito ay nagbibigay-daan sa iyo na lumikha ng napaka-kagiliw-giliw na mga laro, tulad ng makikita mo para sa iyong sarili. Gusto mo bang suriin ito? Pagkatapos ay basahin ang susunod na talata at simulan ang pagsusulat ng mga laro.3. Pagkakaroon ng access sa laro
Upang makakuha ng access sa pagsusulat ng mga laro, kailangan mong pumunta sa seksyong "Mga Laro" sa website ng JavaRush, piliin ang gusto mo at pumunta sa pahina nito. Magkakaroon ng isang pindutan na " Isulat ang iyong solusyon " - i-click ito. Magbubukas ang iyong WebIDE at magsisimula kang magtrabaho sa unang subtask ng laro. Gayundin, mula sa sandaling ito, magiging available sa iyo ang mga subtask ng laro sa Intellij IDEA, sa pamamagitan ng plugin. Kung gumagamit ka ng Intellij IDEA , kakailanganin mong i-update ang plugin. Maaari mong i-download ang pinakabagong bersyon ng plugin dito . Pagkatapos i-update ang plugin, buksan ang listahan ng gawain at piliin ang "Java Games Quest". Susunod, mag-click sa magagamit na subtask: ang Java Games module ay dapat na lumitaw sa iyong proyekto, at sa loob nito - ang library ng engine at ang code ng iyong subtask. Ang mga karagdagang aksyon ay pareho sa paglutas ng iba pang mga problema. Maaaring isulat ang mga laro sa WebIDE o Intellij IDEA, alinman ang gusto mo. Ngunit mas maginhawa pa rin ang Intellij IDEA. At mas propesyonal. Nasa iyo ang pagpipilian.4. Pag-publish ng mga laro sa direktoryo ng application
Kapag natapos mo na ang pagsusulat ng isang laro, maaari mo itong i-publish sa direktoryo ng Mga Laro-at-App sa JavaRush. I-click lang ang button na “I-publish,” at pagkalipas ng kalahating minuto ay idaragdag ang iyong laro sa seksyong “Mga Na-publish na Laro” . Kung gusto mong ibahagi ang iyong pagpapatupad ng laro sa mga kaibigan o kasamahan, walang mas madali. Padalhan lang sila ng link sa personal na pahina ng na-publish na laro at hayaan silang maglaro. Ang pagpaparehistro sa JavaRush ay hindi kinakailangan para dito. Ikaw, bilang tagalikha, ay maaaring humanga sa bilang ng mga session ng paglalaro. Katulad ng dami ng view sa YouTube. Ang mas malaki, mas mabuti.5. Pag-customize ng laro
Kapag natapos mo nang isulat ang laro, maaari mo itong baguhin. Gusto 2048 sa isang 5x5 field? Pakiusap. Ikaw ay isang programmer - mayroon kang keyboard sa iyong mga kamay. Baguhin ang laro ayon sa gusto mo. Maaari kang magdagdag ng bago sa kabuuan. Halimbawa, sa larong Snake, maaaring bumagal ang ahas kung kumakain ito ng mansanas habang sariwa pa ito (sa loob ng unang 5 segundo pagkatapos nitong lumitaw). Kasabay nito, ang mansanas ay maaaring magbago ng kulay mula pula hanggang berde, o maging isang peras. O biglang mahal ng iyong ahas ang mga rabbits kaysa sa mga mansanas... Sa Minesweeper maaari kang magdagdag ng pangalawang buhay sa player, o, halimbawa, isang atomic bomb, na "iilaw" ang mga cell sa loob ng radius ng ilang mga cell. Ngunit tandaan: kung nagdagdag ka ng mga file o graphics sa iyong laro maliban sa pamamagitan ng game engine, maaaring hindi ito mai-publish sa direktoryo ng application. Hindi lahat ay maaaring patakbuhin sa isang browser, alam mo.6. Kapaki-pakinabang na dokumentasyon
Upang makilala mo ang gawain ng JavaRush game engine (pagsisimula ng laro, paglikha ng larangan ng paglalaro at pagtatrabaho sa mga graphics), pagproseso ng kaganapan (paggawa gamit ang mouse, keyboard at timer), pati na rin i-refresh o alamin ang pangunahing teorya ng Java, na magiging kapaki-pakinabang sa pagsulat ng mga gawain - mga laro (ang una at pangalawang JavaRush quest), naghanda kami ng ilang detalyadong mga dokumento:- Seksyon "Mga Laro" sa JavaRush: Paglalarawan ng engine ng laro
- Seksyon "Mga Laro" sa JavaRush: Paghawak ng Kaganapan
- Seksyon "Mga Laro" sa JavaRush: Kapaki-pakinabang na teorya
7. Mga karaniwang problema
Nasa Linux ako at gumagamit ng OpenJDK. Kapag sinimulan ang laro, naghagis ng error ang compiler:Error:(6, 8) java: cannot access javafx.application.Application
class file for javafx.application.Application not found
Anong gagawin? Ang aming engine ng laro ay gumagamit ng JavaFX, at ang OpenJDK ay hindi naka-install bilang default. Ito ay kailangang ayusin:
-
Sa command prompt, ipasok ang command:
sudo apt-get install openjfx
-
Pagkatapos nito, pumunta sa mga setting ng proyekto (alt+ctrl+shift+s) -> SDK's -> Classpath at mag-click sa plus sign sa kanan. Piliin ang jfxrt.jar file. Ito ay matatagpuan sa naka-install na JDK sa landas: <JDK_PATH>/jre/lib/ext/jfxrt.jar
-
I-click ang OK.
-
I-download ang JavaFX Windows SDK mula sa https://gluonhq.com/products/javafx/ .
-
I-unpack ang na-download na archive sa anumang folder (mas mabuti sa lib folder ng proyekto ng Mga Laro).
-
Buksan ang IDEA.
-
Sa IDEA, pumunta sa menu ng File -> Project Structure.
-
Piliin ang tab na Mga Aklatan at i-click ang + -> Java.
-
Tukuyin ang path sa na-unpack na javafx-sdk folder at piliin ang lib folder
-
Susunod, i-click ang OK at sa isang bagong window, idagdag ang JavaFX sa module ng Mga Laro.
-
Ngayon ay dapat na lumitaw ang isang bagong library, i-click ang Ilapat -> OK.
-
Upang ilunsad nang tama, buksan ang Run-> Edit Configuration menu at ilagay ang command sa field ng mga opsyon sa VM:
--module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
-
Susunod, sa parehong tab kailangan mong magdagdag ng Application. Upang gawin ito, i-click ang + -> Application
-
- Piliin ang module ng Mga Laro
- Ipasok ang landas sa pangunahing klase (sa kasong ito -
SnakeGame
) - Idagdag ang field ng mga opsyon sa VM
- Ipasok ang mga opsyon sa VM sa parehong paraan tulad ng sa hakbang 9.
I-click ang Ilapat -> OK
-
Ilunsad ang laro.
GO TO FULL VERSION