Ir para conteúdo
Fórum Script Brasil
  • 0

Dúvida Batalha Naval


fredlink

Pergunta

Amigos,

Abaixo tenho parte do código do jogo feito com o auxílio do nosso instrutor que gera dois tabuleiros, 01 para o usuário e outro para o computador, onde ambos ao rodar o código abrem com a posição aleatória dos membros da esquadra que são pelas letras: P->porta avioes; F->fragata; S->submarino e D->destroyer.

A minha dúvida é como faço para ao abrir o código iniciando o jogo para o usuário, fazendo com que o tabuleiro do computador suma quando for a vez do usuário jogar e vice e versa; e tbém exemplos de como montar as coordenadas para construir as jogadas visando acertar os membros da esquadra.

Abraço a todos

Fred.

import random
def TabPosBar(Barco, Jog):
Ok=0
while Ok==0:
Lin=random.randint(0,7)
Col=random.randint(0,7)
if Jog=="C":
if TabCom[Lin][Col]==".":TabCom[Lin][Col]=Barco; Ok=1
else:
if TabUsu[Lin][Col]==".":TabUsu[Lin][Col]=Barco; Ok=1
def TabComIni():
print("Posicionando a esquadra do computador...")
TabPosBar("F","C")
TabPosBar("S","C")
TabPosBar("P","C")
TabPosBar("D","C")
print("Ok")
def TabUsuIni():
print("Posicionando a esquadra do usuario...")
TabPosBar("F","U")
TabPosBar("S","U")
TabPosBar("P","U")
TabPosBar("D","U")
print("Ok")
def TabComExi():
print("Tabuleiro do computador")
print(" 0 1 2 3 4 5 6 7")
for lin in range(8):
nome=str(lin)+" "
for col in range(8):
nome=nome+TabCom[lin][col]+" "
print(nome)
def TabUsuExi():
print("Tabuleiro do usuario")
print(" 0 1 2 3 4 5 6 7")
for lin in range(8):
nome=str(lin)+" "
for col in range(8):
nome=nome+TabUsu[lin][col]+" "
print(nome)
TabCom=[["."]*8 for i in range(8)]
TabUsu=[["."]*8 for i in range(8)]
TabComIni()
TabComExi()
TabUsuIni()
TabUsuExi()
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Eu acho que só falta criar os turnos dos jogadores

Para isso você primeiro vai precisar definir quais são os requisitos do fim da partida, e vai executar os turnos ate alcançar estes requisitos

Basicamente é criar uma função de loop que engloba todas ou quase todas as funções que você já tem, e as repete ate se obter uma vitoria, encerrando assim o loop

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...