CodeGym /Java Blog /Random /Bagong seksyon sa CodeGym — Mga Laro
John Squirrels
Antas
San Francisco

Bagong seksyon sa CodeGym — Mga Laro

Nai-publish sa grupo
Mayroon kaming magandang balita! Naglunsad kami ng bagong seksyong "Mga Laro" sa CodeGym. Bukas na ito sa lahat ng gumagamit. Ang bawat isa sa inyo ay maaaring magsulat ng isang ganap na laro dito, na may mga graphics, at pakiramdam tulad ng isang tunay na developer ng laro. Ang seksyong ito ay kasalukuyang nasa beta testing, kaya napakahalaga para sa amin na marinig ang iyong opinyon kung paano ito gagawing mas cool! Subukan ito, subukan ang mga bagay, at iwanan ang iyong feedback at mungkahi sa ilalim ng post na ito! Ang aming video ay magtuturo sa iyo sa madaling sabi tungkol sa mga pangunahing tampok ng seksyong "Mga Laro". Enjoy!
Ngayon ay inaanyayahan ka naming matuto nang higit pa tungkol sa mga tampok ng bagong seksyon at makakuha ng mga sagot sa mahahalagang tanong na maaari mong makaharap habang nagsusulat ng mga laro.

1. Paano magsulat ng mga laro sa CodeGym

Tulad ng alam mo, ipinakilala ng CodeGym ang isang bagong tampok: pagsulat ng laro . Ang mga gawaing ito ay higit na malaki kaysa sa mga karaniwang gawain, at higit na kawili-wili. Ang mga ito ay kagiliw-giliw na hindi lamang magsulat, ngunit din, um, upang subukan. Naiintindihan mo kung ano ang pinag-uusapan namin ;) Ang trabaho sa mga opisina ng CodeGym ay literal na huminto sa loob ng ilang araw noong sinimulan namin ang pagsubok sa mga gawain sa laro :) Ang bawat gawain sa laro ay isang proyekto: isang malaking gawain na may dalawampung subtasks. Kapag nagsusulat ng isang laro, kailangan mong kumpletuhin ang mga ito sa pagkakasunud-sunod. Kapag tapos na ang huling subtask, handa na ang iyong laro. Gagamitin nito ang napakasimpleng engine ng laro ng CodeGym . Ang pagtatrabaho dito ay hindi mas mahirap kaysa sa pagtatrabaho sa console. Makakakita ka ng paglalarawan ng engine ng laro at mga halimbawa kung paano ito gamitin sa dokumentong ito .

2. Mga tampok ng makina ng laro

Ang playing field ay nahahati sa mga cell ng game engine. Ang pinakamababang sukat 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. Ang laki ng teksto at kulay ng teksto ay maaari ding itakda para sa bawat cell. Ginagawang posible ng makina na magsulat ng mga tagapangasiwa ng kaganapan para sa mga pag-click ng mouse at pagpindot sa key. Ang isa pang kawili-wiling bagay ay ang kakayahang magtrabaho kasama ang isang timer. Matuto pa sa seksyong "Paggawa gamit ang isang timer." Hinahayaan ka ng aming "obvious" na game engine na lumikha ng mga napakakawili-wiling laro — isang bagay na makikita mo mismo. Gusto mong subukan? Pagkatapos ay basahin ang susunod na talata at simulan ang pagsusulat ng mga laro.

3. Pag-access sa isang laro

Upang magsimulang magsulat ng laro, pumunta sa seksyong "Mga Laro" sa website ng CodeGym, pumili ng gusto mo, at pumunta sa pahina nito. Bagong seksyon sa CodeGym — Mga Laro - 1 Magkakaroon ng button na " Sumulat ng solusyon " — i-click ito. Bagong seksyon sa CodeGym — Mga Laro - 2Magbubukas ang Web IDE. Doon ka magsisimulang magtrabaho sa unang subtask ng laro. Higit pa rito, 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". Bagong seksyon sa CodeGym — Mga Laro - 3Susunod, mag-click sa magagamit na subtask: isang module na "Java Games" ang dapat lumabas sa iyong proyekto, at dapat itong maglaman ng library ng engine at code para sa iyong mga subtask. Pagkatapos nito, ito ay tulad ng paglutas ng anumang iba pang gawain. Maaari kang magsulat ng mga laro sa Web IDE o sa IntelliJ IDEA, alinman ang mas gusto mo. Gayunpaman, mas maginhawa ang IntelliJ IDEA. At mas propesyonal. Nasa iyo ang pagpipilian.

4. Pag-publish ng mga laro sa application catalog

Kapag natapos mo na ang pagsusulat ng isang laro, maaari mo itong i-publish sa catalog ng "Mga Laro at Application" sa CodeGym. Pindutin lang ang button na "I-publish," at sa kalahating minuto ay idadagdag ang iyong laro sa seksyong "Mga Na-publish na Laro." Bagong seksyon sa CodeGym — Mga Laro - 4Kung gusto mong ibahagi ang iyong pagpapatupad ng laro sa mga kaibigan o kasamahan, walang mas madali. Padalhan lang sila ng link sa na-publish na laro, at maaari silang maglaro. Ang pagpaparehistro sa CodeGym ay hindi kinakailangan. Bagong seksyon sa CodeGym — Mga Laro - 5Bilang tagalikha, maaari kang magsaya sa dami ng beses na nilalaro ng iba ang iyong laro. Katulad ng dami ng view sa YouTube. Ang mas malaki, mas mabuti.

5. Pag-customize ng laro

Kapag natapos mo nang magsulat ng isang laro, maaari mo itong baguhin. Gustong maglaro ng 2048 sa isang 5x5 board? Sige lang. Ikaw ay isang programmer — at mayroon kang keyboard sa iyong mga kamay. Baguhin ang laro gayunpaman gusto mo. Maaari kang magdagdag ng isang bagay na ganap na bago. Halimbawa, sa Snake, maaaring bumagal ang ahas kung kakain ito ng sariwang mansanas (sa loob ng 5 segundo pagkatapos lumitaw ang mansanas). Bukod dito, ang mansanas ay maaaring magbago ng kulay mula pula hanggang berde, o maging isang peras. O baka ang iyong ahas ay mahilig sa mga rabbits kaysa sa mga mansanas... Sa Minesweeper, maaari mong bigyan ang manlalaro ng pangalawang buhay o marahil isang atomic bomb na "nagpapailaw" ng mga cell sa loob ng radius ng ilang mga cell. Ngunit tandaan, kung nagtatrabaho ka sa mga file o graphics sa isang laro nang hindi ginagamit ang engine ng laro, maaaring hindi mai-publish ang laro sa catalog ng application. Hindi lahat ay maaaring patakbuhin sa isang browser, alam mo.

6. Kapaki-pakinabang na dokumentasyon

Naghanda kami ng ilang malalim na dokumento para matulungan kang makilala ang CodeGym game engine (pagsisimula ng laro, paggawa ng playing field, at pagtatrabaho sa graphics), paghawak ng event (paggawa gamit ang mouse, keyboard, at timer), at i-refresh o alamin ang pangunahing teorya ng Java na makikita mo kapag nagsusulat ng mga laro (una at pangalawang CodeGym quest):

7. Mga karaniwang problema

Mayroon akong Linux at gumagamit ako ng OpenJDK. Kapag pinatakbo ko ang laro, nagbibigay ng error ang compiler:

Error:(6, 8) java: cannot access javafx.application.Application
  class file for javafx.application.Application not found
Ano ang dapat mong gawin? Gumagamit ang aming game engine ng JavaFX, ngunit hindi ito naka-install bilang default sa OpenJDK. Kailangan mong ayusin ito:
  1. Sa command prompt, ipasok ang sumusunod:sudo apt-get install openjfx

  2. Pagkatapos nito, pumunta sa mga setting ng proyekto (ALT+CTRL+SHIFT+S) -> SDKs -> Classpath at mag-click sa plus sign sa kanan. Piliin ang file na jfxrt.jar. Ito ay matatagpuan sa naka-install na JDK sa: <JDK_PATH>/jre/lib/ext/jfxrt.jar

  3. I-click ang OK.

Mayroon akong Java 11. Hindi ko kayang patakbuhin ang laro. Anong gagawin ko? Ang Java 11 ay walang JavaFX. Bilang resulta, hindi magagawa ng compiler na i-compile ang laro, at magkakaroon ka ng error kapag sinubukan mong patakbuhin ang laro. Upang ayusin ang problema, kailangan mong magdagdag ng JavaFX sa proyekto:
  1. I-download ang JavaFX Windows SDK sa https://gluonhq.com/products/javafx/ .

  2. I-unpack ang na-download na archive sa anumang folder (mas mabuti sa lib folder ng proyekto ng Mga Laro).

  3. Buksan ang IDEA.

  4. Sa IDEA, pumunta sa File -> Project Structure.

  5. Piliin ang tab na Mga Aklatan at i-click ang + -> Java.

    Bagong seksyon sa CodeGym — Mga Laro - 6
  6. Tukuyin ang path sa na-unpack na javafx-sdk folder at piliin ang lib folder

    Bagong seksyon sa CodeGym — Mga Laro - 7
  7. I-click ang OK. Pagkatapos sa bagong window, idagdag ang JavaFX sa module ng Mga Laro.

    Bagong seksyon sa CodeGym — Mga Laro - 8
  8. Ngayon ay dapat lumitaw ang isang bagong library. I-click ang Ilapat -> OK.

    Bagong seksyon sa CodeGym — Mga Laro - 9
  9. Upang patakbuhin nang tama ang laro, buksan ang Run-> Edit Configuration, at ilagay ang sumusunod sa field ng mga opsyon sa VM:

    
    --module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
    
    Bagong seksyon sa CodeGym — Mga Laro - 10
  10. Susunod, kailangan mong idagdag ang application sa tab na ito. Upang gawin ito, i-click ang + -> Application

    Bagong seksyon sa CodeGym — Mga Laro - 11
    1. Piliin ang module ng Mga Laro

    2. Ipasok ang landas sa pangunahing klase (sa kasong ito — SnakeGame)

    3. Ilagay ang parehong mga opsyon sa VM tulad ng sa item 9.

    I-click ang Ilapat -> OK

    Bagong seksyon sa CodeGym — Mga Laro - 12
  11. Patakbuhin ang laro.

Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION