Skip to content

Latest commit

 

History

History

2015-12-11

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

Problem

Batalha Naval

Cada jogador deve dispor de uma área de 10x10 onde ele vai posicionar 5 navios de tamanhos diferentes: um porta-aviões (comprimento 5), um encouraçado (comprimento 4), um submarino e um destroyer (ambom de comprimento 3), e barco de patrulha (comprimento 2). Um jogador nunca deve saber a posição dos navios do oponente. Os navios de um mesmo jogador não podem se cruzar e devem estar dentro das fronteiras da sua área disponível.

Depois que todas as peças estão posicionadas, os jogadores se alternam em turnos para lançar bombas sobre o outro oponente especificando qual posição ele deseja atacar. Se algum dos navios do jogador que está sendo atacado estiver na posição atacada, considera-se que o navio foi atingido. O ataque falha se o atacante lançar uma bomba em um local onde não existe nenhum navio do oponente. Caso todos as posições de um navio for atingida, o jogador atacado deve informar o oponente qual dos seus navios afundou. O jogo continua até que um jogador afunde todos os navios de seu oponente; este jogador é então considerado vencedor. Você deve desenvolver um programa que jogue uma partida de batalha naval entre dois oponentes. Você precisa:

  • Definir uma maneira de indicar o estado inicial dos navios dos jogadores;
  • Exibir todos os movimentos dos jogadores, informando se os ataques foram bem sucedidos ou não;
  • Informar quando um navio é atingido e quando ele é afundado;
  • Exibir ao final do jogo um mapa final do posicionamento final dos navios dos jogadores.

Retrospectiva (11/12/2015):

Positivos

  • Dojo não é democracia
  • Vários níveis de conhecimento
  • Compartilhar conhecimento
  • Avançamos muito no código (quase o dobro!)
  • Semaforo terminando verde
  • Uma nova participante
  • Demonstração de conceitos usados anteriormente
  • Semáforo funcionando em mais de um notebook
  • Cerveja e Pizza
  • Trilha sonora
  • Continuidade entre uma rodada e outra
  • Ataque funcionando, lista de ataques, gameover, início da plotagem da Board

Negativos

  • Discussão inicial muito longa
  • Atraso para começar
  • Semáforo vermelho não funcionando
  • Python 2
  • Trilha sonora
  • Nenhum commit entre rodadas

Participantes: