Class Mundo

java.lang.Object
  |
  +--Mundo

public class Mundo
extends java.lang.Object

class que suporta um conjunto de celulas


Field Summary
 int dimX
          dimensão X do mundo
 int dimY
          dimensão Y do mundo
 int tiroMV
          limite de movimentos de um tiro
 
Constructor Summary
Mundo(int dX, int dY)
          construtor que cria um mundo com uma determinada dimensão X,Y
Mundo(Mundo m)
          construtor que clona um mundo
 
Method Summary
 Celula CelulaEm(int x, int y)
          obtem a celula nas coordenadas indicadas
 boolean eNave(int x, int y)
          verifica se é a nave na posicção X,Y
 boolean eTiro(int x, int y)
          verifica se é um tiro na posicção X,Y
 boolean eVirus(int x, int y)
          verifica se é um Virus na posicção X,Y
 int evoluir()
          faz a evolução do mundo segundo as regras impostas !
 void gerarCelulas(int numcel)
          gera n celulas no mundo
 void gerarVirus(int numvirus)
          gera os virus
 void mataVisinhos(int x, int y)
          mata todos os visinhos de uma celula
 void mvTiros()
          realiza o movimento dos tiros
 void mvVirus()
          realiza o movimento dos virus
 int nCelulasVivas()
          obtem o número de celulas vivas
 void novoMundo(int dX, int dY)
          gera um novo mundo com a dimensão X,Y
 int nTiros()
          obtem o numero de tiros
 int nVirus()
          obtem o número de virus
 void porNave(int x, int y)
          põe a nave na posição X,Y do mundo
 void porTiro(int x, int y, int dir)
          põe o tiro na posicção X,Y que se movimenta da direcção dir
 void porVirus(int x, int y, int dir)
          põe o Virus na posicção X,Y que se movimenta da direcção dir
 int visinhos(int x, int y)
          obtem o número de visinhos
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

tiroMV

public int tiroMV
limite de movimentos de um tiro


dimX

public int dimX
dimensão X do mundo


dimY

public int dimY
dimensão Y do mundo

Constructor Detail

Mundo

public Mundo(int dX,
             int dY)
construtor que cria um mundo com uma determinada dimensão X,Y

Parameters:
dX - dimensão X
dY - dimensão Y

Mundo

public Mundo(Mundo m)
construtor que clona um mundo

Parameters:
m - mundo a clonar
Method Detail

mvTiros

public void mvTiros()
realiza o movimento dos tiros


evoluir

public int evoluir()
faz a evolução do mundo segundo as regras impostas ! - a reprodução celular - a morte de celulas por virus - a morte da nave por virus ou celulas - a morte de virus pelos tiros

Returns:
flag de indicação de fim/continuação do jogo

nCelulasVivas

public int nCelulasVivas()
obtem o número de celulas vivas

Returns:
número de celulas vivas

nTiros

public int nTiros()
obtem o numero de tiros

Returns:
número de tiros

novoMundo

public void novoMundo(int dX,
                      int dY)
gera um novo mundo com a dimensão X,Y

Parameters:
dX - dimensão X
dY - dimensão Y

CelulaEm

public Celula CelulaEm(int x,
                       int y)
obtem a celula nas coordenadas indicadas

Parameters:
x - posição X
y - posição Y
Returns:
Celula

gerarCelulas

public void gerarCelulas(int numcel)
gera n celulas no mundo

Parameters:
numcel - número de celulas a criar

visinhos

public int visinhos(int x,
                    int y)
obtem o número de visinhos

Parameters:
x - posição X
y - posição Y
Returns:
número de visinhos

nVirus

public int nVirus()
obtem o número de virus

Returns:
número de virus

gerarVirus

public void gerarVirus(int numvirus)
gera os virus

Parameters:
numvirus - número de virus a gerar

mataVisinhos

public void mataVisinhos(int x,
                         int y)
mata todos os visinhos de uma celula

Parameters:
x - posição X da celula
y - posição Y da celula

mvVirus

public void mvVirus()
realiza o movimento dos virus


porNave

public void porNave(int x,
                    int y)
põe a nave na posição X,Y do mundo

Parameters:
x - posição X
y - posição Y

eNave

public boolean eNave(int x,
                     int y)
verifica se é a nave na posicção X,Y

Parameters:
x - posicção X
y - posicção Y
Returns:
true/false

porTiro

public void porTiro(int x,
                    int y,
                    int dir)
põe o tiro na posicção X,Y que se movimenta da direcção dir

Parameters:
x - posicção X
y - posicção Y
dir - direcção do tiro

eTiro

public boolean eTiro(int x,
                     int y)
verifica se é um tiro na posicção X,Y

Parameters:
x - posicção X
y - posicção Y
Returns:
true/false

porVirus

public void porVirus(int x,
                     int y,
                     int dir)
põe o Virus na posicção X,Y que se movimenta da direcção dir

Parameters:
x - posicção X
y - posicção Y
dir - direcção do movimento do virus

eVirus

public boolean eVirus(int x,
                      int y)
verifica se é um Virus na posicção X,Y

Parameters:
x - posicção X
y - posicção Y
Returns:
true/false