p1.aplic.mancala.jogo
Class Tabuleiro

java.lang.Object
  |
  +--p1.aplic.mancala.jogo.Tabuleiro

public class Tabuleiro
extends java.lang.Object

Um tabuleiro do jogo de Mancala com 6 buracos e uma Kalaha para cada jogador.

Version:
1.0
Copyright (C) 2001 Universidade Federal da Paraíba.
Author:
Jacques Philippe Sauvé, jacques@dsc.ufpb.br

Field Summary
static int EM_BAIXO
          Posição "em baixo" do tabuleiro, com buracos 1 a 6 e Kalaha à direita.
static int EM_CIMA
          Posição "em cima" do tabuleiro, com buracos 8 a 13 e Kalaha à esquerda.
static int KALAHA
          Posição de um buraco indicando uma Kalaha.
static int NUM_BURACOS
          Número de buracos por jogador (sem incluir Kalahas)
 
Method Summary
 java.lang.Object clone()
          Duplica o tabuleiro.
 Buraco getBuraco(int posição, int númeroDoBuraco)
          Informa o buraco correspondendo a um número de buraco de uma certa posição (EM_BAIXO ou EM_CIMA).
 int numAIndex(int numAbsoluto, int posição)
          Converte um número absoluto (de 0 a 13) para um índice de buraco (0 a 5) Se o buraco não corresponder à posição desejada, lança exceção.
 Buraco próximoBuraco(Buraco buraco)
          Informa o próximo buraco depois de um certo buraco, incluindo Kalahas, no sentido do jogo (anti-horário).
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EM_BAIXO

public static final int EM_BAIXO
Posição "em baixo" do tabuleiro, com buracos 1 a 6 e Kalaha à direita.

EM_CIMA

public static final int EM_CIMA
Posição "em cima" do tabuleiro, com buracos 8 a 13 e Kalaha à esquerda.

KALAHA

public static final int KALAHA
Posição de um buraco indicando uma Kalaha.

NUM_BURACOS

public static final int NUM_BURACOS
Número de buracos por jogador (sem incluir Kalahas)
Method Detail

getBuraco

public Buraco getBuraco(int posição,
                        int númeroDoBuraco)
Informa o buraco correspondendo a um número de buraco de uma certa posição (EM_BAIXO ou EM_CIMA).
Parameters:
posição - A posição de interesse (EM_BAIXO ou EM_CIMA).
númeroDoBuraco - O número do buraco (0 a 5) de interesse.
Returns:
O buraco de interesse.

próximoBuraco

public Buraco próximoBuraco(Buraco buraco)
Informa o próximo buraco depois de um certo buraco, incluindo Kalahas, no sentido do jogo (anti-horário).
Parameters:
buraco - O buraco de referência.
Returns:
O buraco depois do buraco de referência.

numAIndex

public int numAIndex(int numAbsoluto,
                     int posição)
              throws MancalaException
Converte um número absoluto (de 0 a 13) para um índice de buraco (0 a 5) Se o buraco não corresponder à posição desejada, lança exceção. (Isso fede e precisa de refatoramento)
Parameters:
numAbsoluto - Um número de buraco do tabuleiro, de 0 a 13.
posição - A posição (EM_BAIXO, EM_CIMA) na qual este buraco deve estar.
Returns:
O índice do buraco correspondente (de 0 a 5).
Throws:
MancalaException - se O buraco não se localiza na posição indicada.

clone

public java.lang.Object clone()
Duplica o tabuleiro. É um Deep Copy.
Returns:
O clone do objeto.