CodeGym /Java blogg /Slumpmässig /Nytt avsnitt på CodeGym — Spel
John Squirrels
Nivå
San Francisco

Nytt avsnitt på CodeGym — Spel

Publicerad i gruppen
Vi har fantastiska nyheter! Vi har lanserat en ny "Spel"-sektion på CodeGym. Det är nu öppet för alla användare. Var och en av er kan skriva ett fullfjädrat spel här, med grafik, och känna er som en riktig spelutvecklare. Det här avsnittet är för närvarande i betatestning, så det är mycket viktigt för oss att höra din åsikt om hur man gör det ännu coolare! Ge det ett försök, testa saker och lämna din feedback och förslag under det här inlägget! Vår video kommer att lära dig kort om huvudfunktionerna i avsnittet "Spel". Njut av!
Nu inbjuder vi dig att lära dig mer om funktionerna i det nya avsnittet och få svar på viktiga frågor du kan stöta på när du skriver spel.

1. Hur man skriver spel på CodeGym

Som ni vet har CodeGym introducerat en ny funktion: spelskrivning . Dessa uppgifter är betydligt större än vanliga uppgifter och mycket mer intressanta. De är intressanta inte bara att skriva, utan också, um, att testa. Du förstår vad vi pratar om ;) Arbetet på CodeGym-kontoren stannade bokstavligen i flera dagar när vi började testa speluppgifterna :) Varje speluppgift är ett projekt: en stor uppgift med tjugo deluppgifter. När du skriver ett spel måste du slutföra dem i ordning. När den sista deluppgiften är klar är ditt spel klart. Den kommer att använda CodeGyms mycket enkla spelmotor . Att arbeta med det är inte svårare än att arbeta med konsolen. Du hittar en beskrivning av spelmotorn och exempel på hur man använder den i det här dokumentet .

2. Spelmotorfunktioner

Spelplanen är indelad i celler av spelmotorn. Minsta storlek är 3x3; max är 100x100. Varje cell kan målas i en viss färg och lite text kan skrivas i den. Textstorleken och textfärgen kan också ställas in för varje cell. Motorn gör det möjligt att skriva händelsehanterare för musklick och tangenttryckningar. En annan intressant sak är möjligheten att arbeta med en timer. Läs mer i avsnittet "Arbeta med en timer". Vår "uppenbara" spelmotor låter dig skapa mycket intressanta spel - något du kommer att se själv. Vill du pröva? Läs sedan nästa stycke och börja skriva spel.

3. Åtkomst till ett spel

För att börja skriva ett spel, gå till avsnittet "Spel" på CodeGym-webbplatsen, välj ett du gillar och gå till dess sida. Nytt avsnitt på CodeGym — Spel - 1 Det kommer att finnas en " Skriv lösning "-knapp — klicka på den. Nytt avsnitt på CodeGym — Spel - 2Webb-IDE kommer att öppnas. Där kommer du att börja arbeta med den första deluppgiften i spelet. Dessutom kommer spelets deluppgifter att vara tillgängliga för dig i IntelliJ IDEA via plugin. Om du använder IntelliJ IDEA måste du uppdatera plugin-programmet. Du kan ladda ner den senaste versionen av plugin här . Efter att ha uppdaterat insticksprogrammet öppnar du uppgiftslistan och väljer "Java Games Quest". Nytt avsnitt på CodeGym — Spel - 3Klicka sedan på den tillgängliga deluppgiften: en "Java Games"-modul ska visas i ditt projekt, och den ska innehålla motorbiblioteket och koden för dina deluppgifter. Efter det är det precis som att lösa vilken annan uppgift som helst. Du kan skriva spel i webb-IDE eller i IntelliJ IDEA, beroende på vad du gillar mest. Ändå är IntelliJ IDEA bekvämare. Och mer professionell. Valet är ditt.

4. Publicera spel till applikationskatalogen

När du har skrivit klart ett spel kan du publicera det i katalogen "Spel och applikationer" på CodeGym. Tryck bara på "Publicera"-knappen, och om en halv minut kommer ditt spel att läggas till i avsnittet "Publicerade spel". Nytt avsnitt på CodeGym — Spel - 4Om du vill dela din implementering av spelet med vänner eller kollegor kan ingenting vara enklare. Skicka bara en länk till det publicerade spelet till dem så kan de spela. Registrering på CodeGym krävs inte. Nytt avsnitt på CodeGym — Spel - 5Som skapare kan du njuta av hur många gånger andra spelar ditt spel. Precis som antalet visningar på YouTube. Ju större desto bättre.

5. Spelanpassning

När du har skrivit klart ett spel kan du ändra det. Vill du spela 2048 på en 5x5-bräda? Varsågod. Du är en programmerare - och du har ett tangentbord till hands. Ändra spelet hur du vill. Du kan lägga till något helt nytt. Till exempel, i Snake, kan ormen sakta ner om den äter ett färskt äpple (inom 5 sekunder efter att äpplet dyker upp). Dessutom kan äpplet ändra färg från rött till grönt, eller bli ett päron. Eller så kanske din orm älskar kaniner mer än äpplen... I Minesweeper kan du ge spelaren ett andra liv eller kanske en atombomb som "lyser upp" celler inom en radie av flera celler. Men kom ihåg att om du arbetar med filer eller grafik i ett spel utan att använda spelmotorn kanske spelet inte publiceras i applikationskatalogen. Allt kan inte köras i en webbläsare, du vet.

6. Användbar dokumentation

Vi förberedde några djupgående dokument för att hjälpa dig att bekanta dig med spelmotorn CodeGym (initiera spelet, skapa spelplanen och arbeta med grafik), händelsehantering (att arbeta med mus, tangentbord och timer) och uppdatera eller lär dig den grundläggande Java-teorin du hittar när du skriver spel (första och andra CodeGym-uppdraget):

7. Vanliga problem

Jag har Linux och jag använder OpenJDK. När jag kör spelet ger kompilatorn ett felmeddelande:

Error:(6, 8) java: cannot access javafx.application.Application
  class file for javafx.application.Application not found
Vad ska du göra? Vår spelmotor använder JavaFX, men den är inte installerad som standard i OpenJDK. Du måste fixa detta:
  1. Vid kommandotolken anger du följande:sudo apt-get install openjfx

  2. Efter det, gå till projektinställningarna (ALT+CTRL+SHIFT+S) -> SDKs -> Classpath och klicka på plustecknet till höger. Välj filen jfxrt.jar. Den finns i den installerade JDK på: <JDK_PATH>/jre/lib/ext/jfxrt.jar

  3. Klicka på OK.

Jag har Java 11. Jag kan inte köra spelet. Vad ska jag göra? Java 11 har inte JavaFX. Som ett resultat kommer kompilatorn inte att kunna kompilera spelet, och du får ett felmeddelande när du försöker köra spelet. För att åtgärda problemet måste du lägga till JavaFX i projektet:
  1. Ladda ner JavaFX Windows SDK på https://gluonhq.com/products/javafx/ .

  2. Packa upp det nedladdade arkivet i valfri mapp (helst i lib-mappen i Games-projektet).

  3. Öppna IDEA.

  4. I IDEA, gå till Arkiv -> Projektstruktur.

  5. Välj fliken Bibliotek och klicka på + -> Java.

    Nytt avsnitt på CodeGym — Spel - 6
  6. Ange sökvägen till den uppackade mappen javafx-sdk och välj mappen lib

    Nytt avsnitt på CodeGym — Spel - 7
  7. Klicka på OK. Lägg sedan till JavaFX i spelmodulen i det nya fönstret.

    Nytt avsnitt på CodeGym — Spel - 8
  8. Nu ska ett nytt bibliotek dyka upp. Klicka på Verkställ -> OK.

    Nytt avsnitt på CodeGym — Spel - 9
  9. För att köra spelet korrekt, öppna Kör-> Redigera konfiguration och skriv in följande i fältet VM-alternativ:

    
    --module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
    
    Nytt avsnitt på CodeGym — Spel - 10
  10. Därefter måste du lägga till applikationen på den här fliken. För att göra detta, klicka på + -> Applikation

    Nytt avsnitt på CodeGym — Spel - 11
    1. Välj modulen Spel

    2. Ange sökvägen till huvudklassen (i det här fallet — SnakeGame)

    3. Ange samma VM-alternativ som i punkt 9.

    Klicka på Verkställ -> OK

    Nytt avsnitt på CodeGym — Spel - 12
  11. Kör spelet.

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