Dinâmica do jogo
Para facilitar a definição e desenvolvimento do projeto, esta seção especifica os requisitos principais da dinâmica do jogo. Os seguintes requisitos são definidos:
R001 - Iniciar novo jogo
R001 - Iniciar novo jogo
Quando o jogador escolher a opção para iniciar um novo jogo, ele deve especificar também o número de jogadores. Este jogo de bilhar 3D permitirá no máximo somente dois jogadores, os quais deverão alternar os comandos pelo mouse ou teclado quando for sua vez de jogar. Se for escolhido apenas um jogador (modo "solitário"), o outro jogador será implementado automaticamente pelo computador.
Antes de dar início ao jogo, as 15 bolas serão dispostas na posição inicial, que nada mais é do que organizá-las de forma triangular em uma das extremidades verticais da mesa. A bola branca deve ser colocada na extremidade vertical oposta às outras bolas. A Figura 5 mostra a disposição inicial das bolas em forma triangular e da bola branca.
Figura 5 - Posição inicial do jogo
As quinze bolas devem ser organizadas de forma aleatória para proporcionar maior fidelidade a um jogo real (não existe posição determinada para nenhuma delas). Na implementação do jogo, as posições podem ser numeradas de um a quinze e uma função aleatória pode determinar qual bola deve ser colocada em cada posição. A Figura 6 mostra as quinze bolas organizadas seqüencialmente (não aleatoriamente) para ilustrar a identificação de cada posição.
Figura 6 - Posição ordenadas das bolas.
R002 - A tacada
O movimento principal do jogo de bilhar é a tacada. O jogador deve "empunhar" o taco e, com a ponteira de borracha, impulsionar a bola branca em direção a qualquer uma das outras bolas. O jogador nunca pode realizar uma tacada diretamente sobre uma das bolas coloridas.
O modo como a tacada deve ser realizada no jogo de Bilhar 3D foi explicado na seção Cenário do Jogo e quanto mais forte a tacada, com mais velocidade a bola branca e a(s) bola(s) atingida(s) irão se movimentar sobre a mesa. É importante notar que uma tacada pode atingir várias bolas, ou seja, todas as bolas atingidas por alguma outra bola deverão se movimentar de acordo com a intensidade do choque. A Figura 7 mostra um exemplo de uma tacada.
Figura 7 - A tacada
R003 - Movimento das bolas
Toda bola atingida por uma tacada deve sobre um deslocamento sobre a mesa. Na verdade a tacada deve impulsionar a bola branca em direção a alguma outra bola, portanto o que determina o movimento das bolas é o choque entre elas. Enquanto uma bola se desloca sobre a mesa ela deve girar sobre seu próprio eixo, dando a impressão de uma esfera rolando sobre uma superfície plana.
O movimento das bolas possui três fatores envolvidos:
· Direção: a direção do deslocamento da bola deve ser proporcional ao ângulo no qual ela é atingida pela outra bola que causa o deslocamento.
· Velocidade: a velocidade de deslocamento de uma bola deve ser diretamente proporcional à velocidade do deslocamento da outra bola que a atinge. Portanto, quanto maior a força da colisão entre as bolas, maior será a velocidade de deslocamento delas.
· Distância: a bola deve se deslocar certa distância sobre a mesa quando for atingida por outra bola. Esta distância será diretamente proporcional à velocidade de deslocamento da mesma bola.
Mais detalhes sobre como calcular a direção, velocidade e distância do deslocamento das bolas serão fornecidos na especificação do design do projeto.
Uma situação especial no deslocamento das bolas ocorre quando as mesmas atingem a extremidade da mesa. Neste caso elas devem bater na borracha lateral e voltar para o interior da mesa com velocidade e ângulo proporcional a velocidade e ângulo que a lateral da mesa foi atingida.
R004 - Colisão
A colisão ocorre quando duas ou mais bolas chocam-se entre si. Todas as bolas envolvidas na colisão devem sofrer deslocamento com direção e velocidade proporcional a colisão. A colisão entre bolhas de bilhar tem uma propriedade importante com relação à movimentação das bolas após a colisão. A função da colisão é usar uma bola para causar deslocamento em alguma outra bola e, portanto, quando a primeira bola atingir a segunda, esta última deve sofrer deslocamento em linha reta com ângulo e velocidade proporcionais ao ângulo e velocidade da bola que a atingiu.
R005 - Tacada inicial
A tacada inicial, também conhecida como "estouro", é a tacada que dá início ao jogo. Apenas um dos jogadores deve fazer a tacada inicial e quem será responsável por isso deve ser definido por sorteio. As bolas devem ser colocadas na posição inicial (de acordo com a figura 5) e jogador deve realizar uma tacada projetando a bola branca em direção ao conjunto de bolas coloridas.
Após a tacada inicial todas as bolas sofrerão deslocamento (de acordo com as colisões causadas pela tacada inicial) e serão espalhadas sobre a mesa, dando início ao jogo. Após isto os jogadores alternam as tacadas, devendo cada um realizar uma tacada e passar a vez para o adversário (a não ser que alguma bola caia em um dos buracos, mas isto será explicado mais à frente). A Figura 8 mostra o momento de uma tacada inicial, quando a bola branca atinge as demais bolas.
Figura 8 - A tacada inicial
R006 - "Matar" a bola
O objetivo principal do jogo de sinuca, que define o vencedor do jogo, é colocar as bolas coloridas dentro de qualquer uma das caçapas da mesa. Isto é chamado "matar" ou "encaçapar" a bola. Para matar uma bola o jogado deve projetar a bola branca em direção a qualquer outra bola colorida e fazer com que a mesma caia em um dos buracos. O jogador pode perfeitamente usar alguma outra bola colorida ou a tabela (lateral da mesa) para auxiliarem a matar a bola. Como exemplo de uso de uma bola auxiliar, o jogador faz com que a bola branca atinja uma colorida e esta atinja uma outra bola, a qual cai em um dos buracos.
O jogador que matar uma bola tem direito a uma nova tacada e isto é cumulativo, ou seja, enquanto ele estiver matando as bolas, a vez de jogar não é passada para o adversário. Quando ele errar uma tacada, a vez de jogar é passada imediatamente para o adversário e eles voltam a alternar as tacadas.
A Figura 9 mostra o momento de uma tacada que irá matar uma bola.
Figura 9 - "Matando" a bola.
R007 - Separação entre pares e ímpares
De acordo com a regra fundamental do jogo de sinuca, deve existir uma separação entre bolas pares e ímpares. Imediatamente após a tacada inicial, se nenhuma bola "cair", os jogadores podem livremente tentar matar qualquer uma das bolas coloridas. A partir do momento que a primeira bola cair, deve ser observado se ela é par ou ímpar e o jogador responsável pela tacada poderá matar somente este tipo de bola. Por exemplo, se o jogador 1 for o primeiro a matar uma bola e esta for par, a partir deste instante ele poderá matar apenas bolas pares, enquanto que o jogador 2 poderá matar apenas bolas ímpares.
Esta regra também vale para a tacada inicial, ou seja, se o jogador que fez a tacada inicial derrubar uma bola par, ele pode tentar uma nova tacada e a partir deste momento poderá matar somente bolas pares.
R008 - Tacada em branco
A tacada em branco significa que o jogador fez a tacada não atingiu nenhuma bola colorida, ou seja, a bola branca circulou sobre a mesa sem atingir nenhuma outra bola. Quando isto ocorrer, o jogador deve sofre um castigo, que nada mais é do que eliminar uma bola do adversário. A bola a ser eliminada será a de menor valor (pertencente ao adversário) que estiver sobre a mesa.
R009 - "Matar" a bola branca
Quando um dos jogadores realizar uma tacada e acidentalmente fazer com que a bola branca caia em um dos buracos, ele deve sofre um castigo. Este castigo é o mesmo descrito no requisito R008.
Para dar continuidade no jogo, a bola branca deve ser recolocada na posição original que deu início ao jogo (requisito R001).
R010 - Atingindo a bola do adversário
Uma regra importante, relacionada à separação entre pares e ímpares, é que um jogador não pode projetar a bola branca diretamente sobre a bola do adversário. Por exemplo, se determinado jogador deve matar bolas pares e, ao tentar a sua tacada, a primeira bola a ser atingida pela bola branca é uma bola ímpar, ele deve sofrer um castigo, o qual diz que a bola atingida deve ser eliminada do jogo.
Caso o jogador faça com que a bola branca atinja uma bola sua e em seguida atinja outras bolas (incluindo bolas do adversário), ele não deve ser castigado, pois isto é permitido.
R011 - "Matando" uma bola do adversário
Se na sua tacada o jogador acidentalmente matar uma bola do adversário, isto não terá maiores implicações. A bola a cair permanece fora do jogo e a vez de jogar passa para o adversário.
R012 - Fim do jogo
O jogo termina quando um dos jogadores matar todas as bolas que lhe foram atribuídas (todas as pares ou todas as ímpares). Isto faz deste jogador o vencedor.