1. Sådan skriver du spil på CodeGym
Som du ved, har CodeGym introduceret en ny funktion: spilskrivning . Disse opgaver er væsentligt større end normale opgaver og meget mere interessante. De er interessante ikke kun at skrive, men også at teste. Du forstår, hvad vi taler om ;) Arbejdet på CodeGym-kontorerne gik bogstaveligt talt i stå i flere dage, da vi begyndte at teste spilopgaverne :) Hver spilopgave er et projekt: en stor opgave med tyve underopgaver. Når du skriver et spil, skal du færdiggøre dem i rækkefølge. Når den sidste delopgave er færdig, er dit spil klar. Det vil bruge CodeGyms meget enkle spilmotor . At arbejde med det er ikke sværere end at arbejde med konsollen. Du finder en beskrivelse af spilmotoren og eksempler på, hvordan du bruger den i dette dokument .2. Spilmotorfunktioner
Spillefeltet er opdelt i celler af spilmotoren. Minimumsstørrelsen er 3x3; maksimum er 100x100. Hver celle kan males i en bestemt farve, og der kan skrives noget tekst i den. Tekststørrelsen og tekstfarven kan også indstilles for hver celle. Motoren gør det muligt at skrive hændelseshandlere til museklik og tastetryk. En anden interessant ting er evnen til at arbejde med en timer. Få mere at vide i sektionen "Arbejde med en timer". Vores "oplagte" spilmotor lader dig skabe meget interessante spil - noget du selv vil se. Vil du prøve? Læs derefter næste afsnit og begynd at skrive spil.3. Adgang til et spil
For at begynde at skrive et spil, gå til afsnittet "Spil" på CodeGym-webstedet, vælg et, du kan lide, og gå til dets side. Der vil være en " Skriv løsning "-knap - klik på den. Web-IDE'en åbnes. Der vil du begynde at arbejde med spillets første delopgave. Derudover vil spillets underopgaver være tilgængelige for dig i IntelliJ IDEA gennem pluginnet. Hvis du bruger IntelliJ IDEA , skal du opdatere pluginnet. Du kan downloade den seneste version af pluginnet her . Når du har opdateret pluginnet, skal du åbne opgavelisten og vælge "Java Games Quest". Klik derefter på den tilgængelige underopgave: et "Java-spil"-modul skulle vises i dit projekt, og det skal indeholde motorbiblioteket og koden til dine underopgaver. Herefter er det ligesom at løse enhver anden opgave. Du kan skrive spil i Web IDE eller i IntelliJ IDEA, alt efter hvad du synes bedst om. Alligevel er IntelliJ IDEA mere praktisk. Og mere professionel. Det er dit valg.4. Udgivelse af spil til applikationskataloget
Når du er færdig med at skrive et spil, kan du publicere det i "Spil og applikationer"-kataloget på CodeGym. Du skal blot trykke på knappen "Udgiv", og om et halvt minut vil dit spil blive tilføjet til sektionen "Udgivne spil". Hvis du vil dele din implementering af spillet med venner eller kolleger, kunne intet være nemmere. Bare send dem et link til det offentliggjorte spil, og de kan spille. Tilmelding på CodeGym er ikke nødvendig. Som skaberen kan du nyde det antal gange, andre spiller dit spil. Ligesom antallet af visninger på YouTube. Jo større, jo bedre.5. Spiltilpasning
Når du er færdig med at skrive et spil, kan du ændre det. Vil du spille 2048 på et 5x5-bræt? Fortsæt. Du er programmør - og du har et tastatur lige ved hånden. Skift spillet, som du vil. Du kan tilføje noget helt nyt. For eksempel i Snake kan slangen sætte farten ned, hvis den spiser et frisk æble (inden for 5 sekunder efter æblet dukker op). Desuden kunne æblet skifte farve fra rødt til grønt eller blive til en pære. Eller måske elsker din slange kaniner mere end æbler... I Minestryger kan du give spilleren et nyt liv eller måske en atombombe, der "lyser op" celler inden for en radius af flere celler. Men husk, at hvis du arbejder med filer eller grafik i et spil uden at bruge spilmotoren, bliver spillet muligvis ikke offentliggjort i applikationskataloget. Ikke alt kan køres i en browser, du ved.6. Nyttig dokumentation
Vi har udarbejdet nogle dybdegående dokumenter for at hjælpe dig med at stifte bekendtskab med CodeGym-spilmotoren (initialisering af spillet, skabelse af spillefeltet og arbejde med grafik), hændelseshåndtering (arbejde med mus, tastatur og timer) og opdatere eller lær den grundlæggende Java-teori, du finder, når du skriver spil (første og anden CodeGym-quest):- Sektionen "Spil" på CodeGym: Beskrivelse af spilmotoren
- Sektionen "Spil" på CodeGym: Begivenhedshåndtering
- "Spil" sektion på CodeGym: Nyttig teori
7. Almindelige problemer
Jeg har Linux og jeg bruger OpenJDK. Når jeg kører spillet, giver compileren en fejl:
Error:(6, 8) java: cannot access javafx.application.Application
class file for javafx.application.Application not found
Hvad skulle du gøre? Vores spilmotor bruger JavaFX, men den er ikke installeret som standard i OpenJDK. Du skal rette dette:
-
Indtast følgende ved kommandoprompten:
sudo apt-get install openjfx
-
Gå derefter til projektindstillingerne (ALT+CTRL+SHIFT+S) -> SDK'er -> Klassesti og klik på plustegnet til højre. Vælg filen jfxrt.jar. Det er placeret i det installerede JDK på: <JDK_PATH>/jre/lib/ext/jfxrt.jar
-
Klik på OK.
-
Download JavaFX Windows SDK på https://gluonhq.com/products/javafx/ .
-
Pak det downloadede arkiv ud i en hvilken som helst mappe (helst i lib-mappen i spilprojektet).
-
Åbn IDEA.
-
I IDEA skal du gå til Filer -> Projektstruktur.
-
Vælg fanen Biblioteker, og klik på + -> Java.
-
Angiv stien til den udpakkede javafx-sdk -mappe og vælg mappen lib
-
Klik på OK. Tilføj derefter JavaFX til spilmodulet i det nye vindue.
-
Nu skulle der dukke et nyt bibliotek op. Klik på Anvend -> OK.
-
For at køre spillet korrekt skal du åbne Kør-> Rediger konfiguration og indtaste følgende i feltet VM-indstillinger:
--module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
-
Dernæst skal du tilføje applikationen på denne fane. For at gøre dette skal du klikke på + -> Application
-
-
Vælg spilmodulet
-
Indtast stien til hovedklassen (i dette tilfælde —
SnakeGame
) -
Indtast de samme VM-indstillinger som i punkt 9.
Klik på Anvend -> OK
-
-
Kør spillet.
GO TO FULL VERSION