Abbiamo ottime notizie! JavaRush ha una nuova sezione: "Giochi" , che ora è aperta a tutti gli utenti. Qui ognuno di voi può scrivere un gioco a tutti gli effetti con grafica e sentirsi un vero sviluppatore di giochi. Al momento, la sezione è in fase di beta testing, quindi è molto importante per noi sentire la tua opinione su come renderla ancora più interessante! Provalo, testalo, lascia feedback e suggerimenti sotto questo post! Imparerai brevemente le caratteristiche principali della sezione "Giochi" dal nostro video. Godere!
Ora ti invitiamo a dare un'occhiata più da vicino alle funzionalità della nuova sezione e a ottenere risposte alle principali domande che possono sorgere durante la scrittura dei problemi di gioco.

1. Come scrivere giochi in JavaRush

Come già capisci, JavaRush ha un'opportunità unica: scrivere giochi . Sono molto più grandi dei compiti ordinari e molto più interessanti. È interessante non solo scriverli, ma anche, ehm, testarli. Se capisci cosa intendiamo ;) Il lavoro nell'ufficio JavaRush è stato letteralmente paralizzato per diversi giorni quando abbiamo iniziato la fase di test delle attività di gioco :) Ogni attività di gioco è un progetto: un compito di grandi dimensioni con due dozzine di sottoattività. Mentre scrivi il gioco, dovrai completarli in sequenza. Una volta completata l'ultima attività secondaria, il gioco è pronto. Utilizzerà un motore di gioco molto semplice chiamato JavaRush . Lavorare con esso non è più difficile che con la console. Una descrizione del motore di gioco ed esempi di come utilizzarlo possono essere trovati in questo documento .

2. Funzionalità del motore di gioco

Il campo di gioco è diviso dal motore di gioco in celle. La dimensione minima è 3x3, la massima è 100x100. Ogni cella può essere dipinta di un certo colore e al suo interno è possibile scrivere del testo. Inoltre, per ogni cella vengono impostati la dimensione e il colore del testo. Il motore consente di scrivere metodi di gestione per eventi quali "pressione dei pulsanti del mouse" e "pressione della tastiera". Un'altra cosa interessante da notare è la possibilità di lavorare con un timer. Imparerai di più a riguardo nella sezione "Lavorare con il timer". Questo “motore ovvio” ti permette di creare giochi molto interessanti, come vedrai tu stesso. Vuoi dare un'occhiata? Quindi leggi il paragrafo successivo e inizia a scrivere giochi.

3. Ottenere l'accesso al gioco

Per accedere alla scrittura dei giochi, devi andare alla sezione "Giochi" sul sito Web JavaRush, selezionare quello che ti piace e andare alla sua pagina. Nuova sezione di JavaRush - “Giochi” - 1Ci sarà un pulsante " Scrivi la tua soluzione ": fai clic su di esso. Nuova sezione di JavaRush - “Giochi” - 2Il tuo WebIDE si aprirà e inizierai a lavorare sulla prima attività secondaria del gioco. Inoltre, da questo momento in poi, le attività secondarie del gioco saranno disponibili in Intellij IDEA, tramite il plugin. Nuova sezione di JavaRush - “Giochi” - 3Se stai utilizzando Intellij IDEA , dovrai aggiornare il plugin. Puoi scaricare l'ultima versione del plugin qui . Dopo aver aggiornato il plugin, apri l'elenco delle attività e seleziona "Java Games Quest". Nuova sezione di JavaRush - “Giochi” - 4Successivamente, fai clic sull'attività secondaria disponibile: il modulo Giochi Java dovrebbe apparire nel tuo progetto e in esso la libreria del motore e il codice della tua attività secondaria. Ulteriori azioni sono le stesse di quando si risolvono altri problemi. I giochi possono essere scritti in WebIDE o Intellij IDEA, a seconda di quale preferisci. Ma Intellij IDEA è ancora più conveniente. E più professionale. La scelta è tua.

4. Pubblicazione di giochi nella directory dell'applicazione

Quando finisci di scrivere un gioco, puoi pubblicarlo nella directory Games-and-Apps su JavaRush. Basta fare clic sul pulsante "Pubblica" e dopo mezzo minuto il tuo gioco verrà aggiunto alla sezione "Giochi pubblicati" . Nuova sezione di JavaRush - “Giochi” - 5Se vuoi condividere l'implementazione del tuo gioco con amici o colleghi, niente potrebbe essere più semplice. Basta inviare loro un collegamento alla pagina personale del gioco pubblicato e lasciarli giocare. Per questo non è necessaria la registrazione su JavaRush. Nuova sezione di JavaRush - “Giochi” - 6Tu, come creatore, puoi ammirare il numero di sessioni di gioco. Proprio come il numero di visualizzazioni su YouTube. Piu 'grande e', meglio 'e.

5. Personalizzazione del gioco

Una volta finito di scrivere il gioco, puoi modificarlo. Vuoi il 2048 su un campo 5x5? Per favore. Sei un programmatore: hai una tastiera tra le mani. Cambia il gioco come desideri. Puoi aggiungere qualcosa di completamente nuovo. Ad esempio, nel gioco Snake, il serpente può rallentare se mangia una mela mentre è ancora fresca (entro i primi 5 secondi dalla sua comparsa). Allo stesso tempo, la mela può cambiare colore da rossa a verde, oppure diventare una pera. Oppure all'improvviso il tuo serpente ama i conigli più delle mele... In Minesweeper puoi aggiungere una seconda vita al giocatore o, ad esempio, una bomba atomica, che "illuminerà" le celle entro un raggio di diverse celle. Ma ricorda: se aggiungi file o grafica al tuo gioco senza utilizzare il motore di gioco, è possibile che non vengano pubblicati nella directory dell'applicazione. Non tutto può essere eseguito in un browser, lo sai.

6. Documentazione utile

In modo che tu possa familiarizzare con il lavoro del motore di gioco JavaRush (inizializzazione del gioco, creazione del campo di gioco e lavoro con la grafica), elaborazione degli eventi (lavoro con mouse, tastiera e timer), nonché aggiornare o apprendere le basi teoria di Java, che sarà utile per scrivere attività - giochi (la prima e la seconda ricerca JavaRush), abbiamo preparato diversi documenti dettagliati:

7. Problemi comuni

Sono su Linux e utilizzo OpenJDK. All'avvio del gioco, il compilatore genera un errore:
Error:(6, 8) java: cannot access javafx.application.Application
  class file for javafx.application.Application not found
Cosa fare? Il nostro motore di gioco utilizza JavaFX e OpenJDK non lo ha installato per impostazione predefinita. Questo deve essere risolto:
  1. Al prompt dei comandi, inserisci il comando:sudo apt-get install openjfx

  2. Successivamente, vai alle impostazioni del progetto (alt+ctrl+shift+s) -> SDK -> Classpath e fai clic sul segno più a destra. Seleziona il file jfxrt.jar. Si trova nel JDK installato nel percorso: <JDK_PATH>/jre/lib/ext/jfxrt.jar

  3. Fare clic su OK.

Ho Java 11. Non riesco ad avviare il gioco. Cosa fare? Java 11 non ha JavaFX. Pertanto, all'avvio del gioco, il compilatore non sarà in grado di compilare il gioco e si verificherà un errore. Per risolvere il problema, devi aggiungere JavaFX al progetto:
  1. Scarica JavaFX Windows SDK da https://gluonhq.com/products/javafx/ .

  2. Scompatta l'archivio scaricato in una cartella qualsiasi (preferibilmente nella cartella lib del progetto Games).

  3. Apri IDEA.

  4. In IDEA, vai al menu File -> Struttura progetto.

  5. Seleziona la scheda Librerie e fai clic su + -> Java.

    Nuova sezione di JavaRush - “Giochi” - 7
  6. Specificare il percorso della cartella javafx-sdk decompressa e selezionare la cartella lib

    Nuova sezione di JavaRush - “Giochi” - 8
  7. Successivamente, fai clic su OK e in una nuova finestra aggiungi JavaFX al modulo Giochi.

    Nuova sezione di JavaRush - “Giochi” - 9
  8. Ora dovrebbe apparire una nuova libreria, fare clic su Applica -> OK.

    Nuova sezione di JavaRush - “Giochi” - 10
  9. Per avviarlo correttamente, apri il menu Esegui-> Modifica configurazione e inserisci il comando nel campo delle opzioni della VM:

    Nuova sezione di JavaRush - “Giochi” - 11
    --module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
    Nuova sezione di JavaRush - “Giochi” - 11
  10. Successivamente, nella stessa scheda è necessario aggiungere Applicazione. Per fare ciò, fare clic su + -> Applicazione

    Nuova sezione di JavaRush - “Giochi” - 12
    1. Seleziona il modulo Giochi
    2. Inserisci il percorso della classe principale (in questo caso - SnakeGame)
    3. Aggiungi il campo delle opzioni della VM
    4. Nuova sezione di JavaRush - “Giochi” - 13
    5. Immettere le opzioni VM analogamente al punto 9.

    Fare clic su Applica -> OK

    Nuova sezione di JavaRush - “Giochi” - 14
  11. Fai partire il gioco.