JavaRush /Blogue Java /Random-PT /Nova seção do JavaRush - “Jogos”

Nova seção do JavaRush - “Jogos”

Publicado no grupo Random-PT
Temos ótimas notícias! JavaRush tem uma nova seção - “Jogos” , que agora está aberta a todos os usuários. Aqui cada um de vocês pode escrever um jogo completo com gráficos e se sentir como um verdadeiro desenvolvedor de jogos. No momento, a seção está em teste beta, por isso é muito importante ouvirmos a sua opinião sobre como torná-la ainda mais legal! Experimente, teste, deixe comentários e sugestões neste post! Você aprenderá brevemente sobre os principais recursos da seção “Jogos” em nosso vídeo. Aproveitar!
Agora convidamos você a dar uma olhada mais de perto nas capacidades da nova seção e obter respostas para as principais questões que podem surgir ao escrever problemas de jogo.

1. Como escrever jogos em JavaRush

Como você já entendeu, JavaRush tem uma oportunidade única de escrever jogos . Eles são significativamente maiores que as tarefas comuns e muito mais interessantes. É interessante não apenas escrevê-los, mas também testá-los. Se é que você nos entende ;) O trabalho no escritório do JavaRush ficou literalmente paralisado por vários dias quando iniciamos a fase de testes das tarefas do jogo :) Cada tarefa do jogo é um projeto: uma tarefa grande com duas dúzias de subtarefas. Ao escrever o jogo, você precisará completá-los sequencialmente. Quando a última subtarefa for concluída, seu jogo estará pronto. Ele usará um mecanismo de jogo muito simples chamado JavaRush . Trabalhar com isso não é mais difícil do que com o console. Uma descrição do mecanismo de jogo e exemplos de como trabalhar com ele podem ser encontrados neste documento .

2. Capacidades do motor de jogo

O campo de jogo é dividido em células pelo mecanismo de jogo. O tamanho mínimo é 3x3, o máximo é 100x100. Cada célula pode ser pintada com uma determinada cor e algum texto pode ser escrito nela. Além disso, para cada célula são definidos o tamanho e a cor do texto. O mecanismo permite que você escreva métodos manipuladores para eventos como “pressionamentos de botão do mouse” e “pressionamentos de teclado”. Outra coisa interessante a notar é a capacidade de trabalhar com um temporizador. Você aprenderá mais sobre isso na seção “Trabalhando com o cronômetro”. Este “motor óbvio” permite criar jogos muito interessantes, como você verá por si mesmo. Quer conferir? Então leia o próximo parágrafo e comece a escrever jogos.

3. Obtendo acesso ao jogo

Para ter acesso à escrita de jogos, você precisa ir até a seção “Jogos” do site JavaRush, selecionar o que você gosta e acessar sua página. Nova seção do JavaRush - “Jogos” - 1Haverá um botão “ Escreva sua solução ” - clique nele. Nova seção do JavaRush - “Jogos” - 2Seu WebIDE será aberto e você começará a trabalhar na primeira subtarefa do jogo. Além disso, a partir deste momento, as subtarefas do jogo estarão disponíveis para você no Intellij IDEA, através do plugin. Nova seção do JavaRush - “Jogos” - 3Se você estiver usando o Intellij IDEA , precisará atualizar o plugin. Você pode baixar a versão mais recente do plugin aqui . Após atualizar o plugin, abra a lista de tarefas e selecione "Java Games Quest". Nova seção do JavaRush - “Jogos” - 4A seguir, clique na subtarefa disponível: o módulo Java Games deverá aparecer no seu projeto, e nele - a biblioteca do motor e o código da sua subtarefa. As ações posteriores são iguais às da resolução de outros problemas. Os jogos podem ser escritos em WebIDE ou Intellij IDEA, conforme sua preferência. Mas o Intellij IDEA é ainda mais conveniente. E mais profissional. A escolha é sua.

4. Publicação de jogos no diretório do aplicativo

Ao terminar de escrever um jogo, você pode publicá-lo no diretório Games-and-Apps do JavaRush. Basta clicar no botão “Publicar” e depois de meio minuto seu jogo será adicionado à seção “Jogos Publicados” . Nova seção do JavaRush - “Jogos” - 5Se você deseja compartilhar a implementação do seu jogo com amigos ou colegas, nada poderia ser mais fácil. Basta enviar-lhes um link para a página pessoal do jogo publicado e deixá-los jogar. O registro no JavaRush não é necessário para isso. Nova seção do JavaRush - “Jogos” - 6Você, como criador, pode admirar o número de sessões de jogo. Assim como o número de visualizações no YouTube. Quanto maior melhor.

5. Personalização do jogo

Depois de terminar de escrever o jogo, você poderá modificá-lo. Quer 2048 em um campo 5x5? Por favor. Você é um programador - você tem um teclado nas mãos. Mude o jogo como desejar. Você pode adicionar algo totalmente novo. Por exemplo, no jogo Snake, a cobra pode desacelerar se comer uma maçã enquanto ela ainda está fresca (nos primeiros 5 segundos após seu aparecimento). Ao mesmo tempo, a maçã pode mudar de cor de vermelho para verde ou tornar-se uma pêra. Ou de repente sua cobra ama mais coelhos do que maçãs... No Campo Minado você pode adicionar uma segunda vida ao jogador, ou, por exemplo, uma bomba atômica, que irá “iluminar” células em um raio de várias células. Mas lembre-se: se você adicionar arquivos ou gráficos ao jogo de outra forma que não seja por meio do mecanismo de jogo, eles poderão não ser publicados no diretório do aplicativo. Nem tudo pode ser executado em um navegador, você sabe.

6. Documentação útil

Para que você possa se familiarizar com o trabalho do motor de jogo JavaRush (inicializar o jogo, criar o campo de jogo e trabalhar com gráficos), processamento de eventos (trabalhar com mouse, teclado e cronômetro), bem como atualizar ou aprender o básico teoria do Java, que será útil na escrita de tarefas - jogos (a primeira e a segunda missão JavaRush), preparamos vários documentos detalhados:

7. Problemas comuns

Estou no Linux e usando OpenJDK. Ao iniciar o jogo, o compilador gera um erro:
Error:(6, 8) java: cannot access javafx.application.Application
  class file for javafx.application.Application not found
O que fazer? Nosso mecanismo de jogo usa JavaFX e o OpenJDK não o possui instalado por padrão. Isso precisa ser corrigido:
  1. No prompt de comando, digite o comando:sudo apt-get install openjfx

  2. Depois disso, vá até as configurações do projeto (alt+ctrl+shift+s) -> SDK's -> Classpath e clique no sinal de mais à direita. Selecione o arquivo jfxrt.jar. Ele está localizado no JDK instalado no caminho: <JDK_PATH>/jre/lib/ext/jfxrt.jar

  3. Clique OK.

Tenho Java 11. Não consigo iniciar o jogo. O que fazer? Java 11 não tem JavaFX. Portanto, ao iniciar o jogo, o compilador não conseguirá compilar o jogo e ocorrerá um erro. Para corrigir o problema, você precisa adicionar JavaFX ao projeto:
  1. Baixe o JavaFX Windows SDK em https://gluonhq.com/products/javafx/ .

  2. Descompacte o arquivo baixado em qualquer pasta (de preferência na pasta lib do projeto Games).

  3. Abra a IDEIA.

  4. No IDEA, vá para o menu Arquivo -> Estrutura do Projeto.

  5. Selecione a guia Bibliotecas e clique em + -> Java.

    Nova seção do JavaRush - “Jogos” - 7
  6. Especifique o caminho para a pasta javafx-sdk descompactada e selecione a pasta lib

    Nova seção do JavaRush - “Jogos” - 8
  7. Em seguida, clique em OK e em uma nova janela, adicione JavaFX ao módulo Jogos.

    Nova seção do JavaRush - “Jogos” - 9
  8. Agora uma nova biblioteca deve aparecer, clique em Aplicar -> OK.

    Nova seção do JavaRush - “Jogos” - 10
  9. Para iniciar corretamente, abra o menu Executar->Editar Configuração e digite o comando no campo de opções da VM:

    Nova seção do JavaRush - “Jogos” - 11
    --module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
    Nova seção do JavaRush - “Jogos” - 11
  10. Em seguida, na mesma guia você precisa adicionar Application. Para fazer isso, clique em + -> Aplicativo

    Nova seção do JavaRush - “Jogos” - 12
    1. Selecione o módulo Jogos
    2. Digite o caminho para a classe principal (neste caso - SnakeGame)
    3. Adicione um campo de opções de VM
    4. Nova seção do JavaRush - “Jogos” - 13
    5. Insira as opções de VM da mesma forma que no ponto 9.

    Clique em Aplicar -> OK

    Nova seção do JavaRush - “Jogos” - 14
  11. Iniciar o jogo.

Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION