Problemas em criar jogos em JavaFX

4 respostas
augustojulio

Bom dia pessoal,
quero deixar claro que sou mais um iniciante em javafx.
Estou desenvolvendo o jogo de um labirinto, tomado como base o jogo do pac man.

O problema que está ocorrendo é o seguinte:
Quero criar uma "barreira" para bloquear a passagem dos personagens. Quero que essa barreira apareça e apaga após um determinado tempo.
Estou tentando utilizar visible mas não está dando certo.
O erro está comentado no código abaixo:

public function create(): Node {
         
Rectangle {
         x: MazeData21.calcGridX(x1)
         y: MazeData21.calcGridY(y1)
         width: MazeData21.calcGridX(x2) - MazeData21.calcGridX(x1)
         height: MazeData21.calcGridY(y2) - MazeData21.calcGridY(y1)
         strokeWidth : MazeData21.GRID_STROKE
         stroke : Color.GREEN//remendos internos
         arcWidth: 12
         arcHeight: 12
      /*  visible: true
          action: function () {
                     if ( visible == true ){
       strokeWidth = MazeData21.GRID_STROKE + 1;
       stroke = Color.GREEN;
       MazeData21.setBlockMazeData(x1, y1, x2, y2);

       }
      }*/
    }

  }

A minha barreira não é um objeto em si , ela está na função setBlockMazeData(x1, y1, x2, y2) da linha - MazeData21.setBlockMazeData(x1, y1, x2, y2);

Segue também a função completa(esta foi escrita em java):

public static void setBlockMazeData(int x1, int y1, int x2, int y2) {
    x1 = makeInRange(x1);
    y1 = makeInRange(y1);
    x2 = makeInRange(x2);
    y2 = makeInRange(y2);

    for (int i = x1; i <= x2; i++) {
      mazeData21[i][y1] = BLOCK;
      mazeData21[i][y2] = BLOCK;
    }

    for (int i = y1; i <= y2; i++) {
      mazeData21[x1][i] = BLOCK;
      mazeData21[x2][i] = BLOCK;
    }

  }

Agradeço desde já!!

4 Respostas

augustojulio

Alguém tem alguma idéia de como fazer??

sergiolopes

Quer uma dica? Se você está começando agora com JavaFX como disse, não perca seu tempo. A Oracle acaba de descontinuar o JavaFX Script e prometeu sérias mudanças no JavaFX novo. Ou seja, o que se conhece hoje como JavaFX não serve pra muita coisa :slight_smile:

Jesuino_Master

Para a versão JavaFX posterior a 1.3.1 terá o Visage como alternativa.

NO entanto, o JavaFX 1.3.1 é útil para criar aplicações, não vejo problemas em usar essa versão…

Outro ponto é que o JavaFX não passa de uma API. O que ele está vendo com JavaFX Script é perfeitamente aplicável a JavaFX 2.0, só que invés de JFX Script ele irá usar o Java mesmo…

Jesuino_Master

Olá!

Quando o personagem bater na barreira você quer que ela suma usando um efeito “fade out”?

Se sim, no motor do seu jogo teste colisões entre o personagem e o retângulo da barreira. Quando houver a colisão você usa uma Transição de Fade!

Mais ou menos isso, se tiver mais alguma dúvida poste ae.

Criado 14 de outubro de 2010
Ultima resposta 27 de out. de 2010
Respostas 4
Participantes 3