Jump to content
Eu VS Java

Mover objectos em jogo java

Recommended Posts

Eu VS Java

Boas estou com o seguinte problema, pretendo que os objectos (neste caso invasores) quando encontram um cruzamento em que podem escolher entre direita e esquerda, sigam sempre no sentido escolhido até nao puderem mais...

eis o que fiz:

private String ultimo;
private String ult(MovingImage invasor){
 return ultimo;
}

   private void moveCreeps() {

 for (MovingImage invasor : invaders) {

  int valor = new Random().nextInt(2);
  switch (valor){
  case 0://direita
   System.out.println("entrou direita");
   if(estalivre(invasor.getPosition().x , invasor.getPosition().y + 50)){
    invasor.move(0,50);
    ultimo="baixo";
   }else if(ult(invasor) != "esq"){
    if(estalivre(invasor.getPosition().x + 50, invasor.getPosition().y)){
     invasor.move(50,0);
     ultimo="dir";
     }
   }
   break;

  case 1://esquerda
   System.out.println("entrou esquerda");
   if(estalivre(invasor.getPosition().x , invasor.getPosition().y + 50)){
    invasor.move(0,50);
    ultimo="baixo";
   }else if(ult(invasor)!="dir"){
    if(estalivre(invasor.getPosition().x - 50, invasor.getPosition().y)){
     invasor.move(-50,0);
     ultimo="esq";
     }
   }
   break;
  }
 } 

}

Edited by brunoais
geshi

Share this post


Link to post
Share on other sites
HappyHippyHippo

podes ser mais explícito no que realmente queres ? de preferência apresenta um exemplo ...

Edited by HappyHippyHippo

IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
Eu VS Java

<p>este é o mapa que eu tenho para o nivel 1. como vês o invasor pode ir por dois caminhos,e o que eu pretendo é que qnd por exemplo escolhe o caminho da direita(quando entra no case 0)13zbf4h.png

Share this post


Link to post
Share on other sites
Eu VS Java

criei um txt com o mapa... depois guardo as posições do caminho numa lista

Share this post


Link to post
Share on other sites
HappyHippyHippo

então não será difícil teres uma referência da lista do caminho a tomar


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
tcms

A questão é que a leitura dos caminhos não é feita ao mesmo tempo com a actualização do seu movimento.

Ou seja, tu primeiro vais buscar as posições onde ele vai andar certo? E posto isto, sobre essas posições ele tem de perceber o caminho a tomar.

Share this post


Link to post
Share on other sites
HappyHippyHippo

A questão é que a leitura dos caminhos não é feita ao mesmo tempo com a actualização do seu movimento.

Ou seja, tu primeiro vais buscar as posições onde ele vai andar certo? E posto isto, sobre essas posições ele tem de perceber o caminho a tomar.

isso não interessa, se dizes que tens os caminhos previamente guardados em listas, é só por o objecto a percorrer uma destas.


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
tcms

Sim tens razão, mas na situação dele penso que o problema está no facto de depois de escolher uma direcção o case estar constantemente a mudar (calculo que tenha usado um switch)

Share this post


Link to post
Share on other sites
HappyHippyHippo

Sim tens razão, mas na situação dele penso que o problema está no facto de depois de escolher uma direcção o case estar constantemente a mudar (calculo que tenha usado um switch)

então eu pergunto : porque raio estaria sempre a verificar para qual caminho tem de se mover ?


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
HappyHippyHippo

nop ... se um/todos os caminhos estão definidos em arraylist's, só necessita de tomar uma decisão ao chegar a uma intersecção, fazer-lo a toda a hora é completamente desnecessário, muito menos ao sair de uma intersecção ...


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
tcms

pois, tens razão! Mas aí tem de haver implementação para a verificação se se encontra num intersecção ou não, e penso que isso não foi feito pelo user. É uma questão dele se pronunciar.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.