Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # coding: utf-8
- # Ideia do jogo
- """ Construir um jogo de batalha naval para dois jogadores """
- # Falta desenvolver
- """Nenhum bug à ser consertado... Só esperando incluir mais funções!"""
- from random import randrange
- from datetime import datetime
- now = datetime.now()
- board = []
- acertos_player_1 = 0
- acertos_player_2 = 0
- for x in range(5):
- board.append(['O'] * 5)
- def print_board(x):
- print("Índices: ")
- print(" 0 1 2 3 4")
- i = 0
- for row in x:
- print(str(i)+":"+" ".join(row))
- i+=1
- def random_row(x):
- return (randrange(0, len(x)))
- def random_col(x):
- return (randrange(0, len(x[0])))
- def salvar_pontuacao(acertos, player, nome):
- if player == 1:
- file = open('player1_pont.txt', 'a')
- file.write(
- '{} acertos. Pontuação feita em {}/{}/{} às {}:{} por player {} chamado {}\n'.format(acertos, now.day,
- now.month, now.year,
- now.hour, player,
- now.minute, nome))
- file.close()
- elif player == 2:
- file = open('player2_pont.txt', 'a')
- file.write(
- '{} acertos. Pontuação feita em {}/{}/{} às {}:{} por player {} chamado {}\n'.format(acertos, now.day,
- now.month, now.year,
- now.hour, now.minute,
- player, nome))
- file.close()
- else:
- try:
- menu()
- except ErroDesconhecido:
- print("Erro desconhecido!")
- def menu():
- players = {1: "X", 2: "V"}
- game_over = False
- while not game_over:
- linha_player_2 = random_row(board)
- coluna_player2 = random_col(board)
- linha_player_1 = random_row(board)
- coluna_player1 = random_col(board)
- for player in players:
- print_board(board)
- if player == 1:
- print("\nO player atual é o %d\n" % (player))
- print("Linha {}, coluna {}".format(linha_player_2, coluna_player2))
- tentativa_linha = int(input("Digite a linha: "))
- tentativa_coluna = int(input("Digite a coluna: "))
- if tentativa_linha == linha_player_2 and tentativa_coluna == coluna_player2:
- global acertos_player_1
- acertos_player_1 += 1
- if acertos_player_1 == 1:
- linha_player_2 -= 1
- if linha_player_2 == -1:
- linha_player_2 = 0
- else:
- linha_player_2 = linha_player_2
- coluna_player2 -= 1
- if coluna_player2 == -1:
- coluna_player2 = 0
- else:
- coluna_player2 = coluna_player2
- board[linha_player_2][coluna_player2] = players[player]
- print("Você ganhou!!!!!!\nParabéns, você destroçou o player %d\n" % (player + 1))
- else:
- linha_player_2 = linha_player_2 - 1
- if linha_player_2 == -1:
- linha_player_2 = 0
- else:
- linha_player_2 = linha_player_2
- coluna_player2 = coluna_player2 - 1
- if coluna_player2 == -1:
- coluna_player2 = 0
- else:
- coluna_player2 = coluna_player2
- board[linha_player_2][coluna_player2] = players[player]
- print("Você ganhou mais uma vez!, parabéns você destroçou o player %d\n de novo!!!\n" % (
- player + 1))
- deseja_salvar = input("Deseja salvar a pontuação? Digite (S/n) para confirmar: ")
- if deseja_salvar.title() == 'S':
- nome_player = input("Digite o seu nome: ")
- if len(nome) > 1:
- salvar_pontuacao(acertos_player_1, player, nome_player)
- print("A pontuação foi salva!\n")
- else:
- print("Você não digitou seu nome!")
- elif deseja_salvar.title() == 'N':
- print("Não iremos salvar!\n")
- else:
- print("Você não digitou nenhum dos caracteres\nNão iremos salvar...\n")
- else:
- if (tentativa_linha < 0 or tentativa_linha > 4) or (tentativa_coluna < 0 or tentativa_coluna > 4):
- print("Isso não é nem mesmo o oceano. Uau, você errou feio!\n")
- else:
- print("Você perdeu!\n")
- elif player == 2:
- print("\nO player atual é o %d\n" % (player))
- print("Linha {}, coluna {}".format(linha_player_1, coluna_player1))
- tentativa_linha = int(input("Digite a linha: "))
- tentativa_coluna = int(input("Digite a coluna: "))
- if tentativa_linha == linha_player_1 and tentativa_coluna == coluna_player1:
- global acertos_player_2
- acertos_player_2 += 1
- if acertos_player_2 == 1:
- linha_player_1 -= 1
- if linha_player_1 == -1:
- linha_player_1 = 0
- else:
- linha_player_1 = linha_player_1
- coluna_player1 -= 1
- if coluna_player1 == -1:
- coluna_player1 = 0
- else:
- coluna_player1 = coluna_player1
- board[linha_player_1][coluna_player1] = players[player]
- print("Você ganhou!!!!!!\nParabéns, você destroçou o player %d\n" % (player - 1))
- else:
- linha_player_1 -= 1
- if linha_player_1 == -1:
- linha_player_1 = 0
- else:
- linha_player_1 = linha_player_1
- coluna_player1 -= 1
- if coluna_player1 == -1:
- coluna_player1 = 0
- else:
- coluna_player1 = coluna_player1
- board[linha_player_1][coluna_player1] = players[player]
- print("Você ganhou mais uma vez!, parabéns você destroçou o player %d\n de novo!!!\n" % (
- player - 1))
- acertos_player_2 += 1
- deseja_salvar = input("Deseja salvar a pontuação? Digite (S/n) para confirmar: ")
- if deseja_salvar.title() == 'S':
- nome_player = input("Digite o seu nome: ")
- if len(nome) > 1:
- salvar_pontuacao(acertos_player_2, player, nome_player)
- print("A pontuação foi salva!\n")
- else:
- print("Você não digitou seu nome!")
- elif deseja_salvar.title() == 'N':
- print("Não iremos salvar!\n")
- else:
- print("Você não digitou nenhum dos caracteres\nNão iremos salvar...\n")
- else:
- if (tentativa_linha < 0 or tentativa_linha > 4) or (tentativa_coluna < 0 or tentativa_coluna > 4):
- print("Isso não é nem mesmo o oceano. Uau, você errou feio!\n")
- else:
- print("Você perdeu!\n")
- else:
- try:
- game_over = False
- player = 1
- except GameOverFail:
- print("Deu algum erro que nós não sabemos...\n")
- menu()
Advertisement
Add Comment
Please, Sign In to add comment