<code>
import time import os
import random
defclear():
os.system('clear')
defp(x):
print(x)
'''con esto abreviamos print xd
no es muy util ya que tiene muchas limitaciones pero bueno '''
game1 = 1
game2 = 1
game3 = 1
game4 = 1
game5 = 1
vidas_jugador = 3
vidas_bot = 3
partida = 1while game1:
ifTrue:
Agua = '-'
A1 = Agua
A2 = Agua
A3 = Agua
A4 = Agua
A5 = Agua
B1 = Agua
B2 = Agua
B3 = Agua
B4 = Agua
B5 = Agua
C1 = Agua
C2 = Agua
C3 = Agua
C4 = Agua
C5 = Agua
D1 = Agua
D2 = Agua
D3 = Agua
D4 = Agua
D5 = Agua
E1 = Agua
E2 = Agua
E3 = Agua
E4 = Agua
E5 = Agua
ifTrue:
Bote = 'O'
Bomba = 'X'
Coordenadas = [
A1, A2, A3, A4, A5,
B1, B2, B3, B4, B5,
C1, C2, C3, C4, C5,
D1, D2, D3, D4, D5,
E1, E2, E3, E4, E5,
]
Posiciones = [
'A1', 'A2', 'A3', 'A4', 'A5',
'B1', 'B2', 'B3', 'B4', 'B5',
'C1', 'C2', 'C3', 'C4', 'C5',
'D1', 'D2', 'D3', 'D4', 'D5',
'E1', 'E2', 'E3', 'E4', 'E5',
]
passifTrue:
deftabla(Coordenadas):
tablero = f""" A B C D E
___ ___ ___ ___ ___
1 | {Coordenadas[0]} | {Coordenadas[5]} | {Coordenadas[10]} | {Coordenadas[15]} | {Coordenadas[20]} |
¯¯¯ ¯¯¯ ¯¯¯ ¯¯¯ ¯¯¯
2 | {Coordenadas[1]} | {Coordenadas[6]} | {Coordenadas[11]} | {Coordenadas[16]} | {Coordenadas[21]} |
¯¯¯ ¯¯¯ ¯¯¯ ¯¯¯ ¯¯¯
3 | {Coordenadas[2]} | {Coordenadas[7]} | {Coordenadas[12]} | {Coordenadas[17]} | {Coordenadas[22]} |
¯¯¯ ¯¯¯ ¯¯¯ ¯¯¯ ¯¯¯
4 | {Coordenadas[3]} | {Coordenadas[8]} | {Coordenadas[13]} | {Coordenadas[18]} | {Coordenadas[23]} |
¯¯¯ ¯¯¯ ¯¯¯ ¯¯¯ ¯¯¯
5 | {Coordenadas[4]} | {Coordenadas[9]} | {Coordenadas[14]} | {Coordenadas[19]} | {Coordenadas[24]} |
¯¯¯ ¯¯¯ ¯¯¯ ¯¯¯ ¯¯¯
"""return tablero
tablero = tabla(Coordenadas) """print('''
A B C D E
_____ _____ ____ _____ _____
1 | ''',A1,''' | ''',B1,''' | ''',C1,'''| ''',D1,''' | ''',E1,''' |
¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯
_____ _____ ____ _____ _____
2 | ''',A2,''' | ''',B2,''' | ''',C2,'''| ''',D2,''' | ''',E2,''' |
¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯
_____ _____ ____ _____ _____
3 | ''',A3,''' | ''',B3,''' | ''',C3,'''| ''',D3,''' | ''',E3,''' |
¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯
_____ _____ ____ _____ _____
4 | ''',A4,''' | ''',B4,''' | ''',C4,'''| ''',D4,''' | ''',E4,''' |
¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯
_____ _____ ____ _____ _____
5 | ''',A5,''' | ''',B5,''' | ''',C5,'''| ''',D5,''' | ''',E5,''' |
¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯
''')"""'''tablero = """
A B C D E
_____ _____ ____ _____ _____
1 | {} | {} | {} | {} | {} |
¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯
2 | {} | {} | {} | {} | {} |
¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯
3 | {} | {} | {} | {} | {} |
¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯
4 | {} | {} | {} | {} | {} |
¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯
5 | {} | {} | {} | {} | {} |
¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯
""".format(A1, B1, C1, D1, E1, A2, B2, C2, D2, E2, A3, B3, C3, D3, E3, A4, B4, C4, D4, E4, A5, B5, C5, D5, E5)
print(tablero)
'''passwhile game2:
print('''
bienvenido a el juego de
\t\"BATLESHIPP"''')
time.sleep(0.5)
p('cargando...')
print('''selecciona una opcion
para continuar:
1. JUGAR
2. Como se juega?
3. Salir''')
whileTrue:
try:
opcion = int(input('\n ingresa una opcion:... '))
if opcion == opcion in range(1,4):
breakelse:
print('intentalo de nuevo')
except ValueError:
print('ingrese una opcion valida')
if opcion == 2:
print('Cargando...')
time.sleep(2)
clear()
print('''\tComo se juega?
El juego consiste en encontrar
la flota de barcos enemigos
antes que tu rival(bot)
encuentre los tuyos.
El programa esta diseñado
para que tanto los barcos del
enemigo al igual que sus
elecciones sean aleatorios
en cambio tu si podras elegir
libremente las posiciones de
tus barcos y donde atacar.
El tablero:
Abarca un espacio de 5x5
Cantidad de barcos:
3 barcos para cada jugador
El juego termina cuando uno
de los jugadores hunde todos
los barcos enemigos.
''')
input('''
presiona cualquier tecla
para volver al menu principal
''')
clear()
elif opcion == 1:
game2 -= 1
print('Cargando...')
time.sleep(2)
clear()
elif opcion == 3:
game1 -= 1
game2 -= 1
game3 -= 1
game4 -= 1
game5 -= 1
print(' Saliendo...')
while game3:
print('''Para iniciar coloca tus barcos
Este sera el tablero:\n''')
print(tablero)
Barco1 = ()
Barco2 = ()
Barco3 = ()
Barcos = []
whilenot Barco1 in Posiciones:
Barco1 = input('ingresa la coordenada de\ntu primer barco: ...').upper()
if Barco1 notin Posiciones:
print('Elige una coordenada Valida')
else:
print('OK')
Barcos.append(Barco1)
whilenot Barco2 in Posiciones:
Barco2 = input('ingresa la coordenada de\ntu segundo barco: ...').upper()
if Barco2 notin Posiciones:
print('Elige una coordenada Valida')
elif Barco2 == Barco1:
print('No se puede colocar dos barcos\nen la misma posicion')
Barco2 = ()
else:
print('OK')
Barcos.append(Barco2)
whilenot Barco3 in Posiciones:
Barco3 = input('ingresa la coordenada de\ntu tercer barco: ...').upper()
if Barco3 notin Posiciones:
print('Elige una coordenada Valida')
elif Barco3 == Barco1 or Barco3 == Barco2:
print('No se puede colocar dos barcos\nen la misma posicion')
Barco3 = ()
else:
print('OK')
Barcos.append(Barco3)
time.sleep(1)
clear()
print('Las posiciones de tus barcos\nson las siguientes: ',Barcos)
game3 -= 1while game4:
ifTrue:
PBarco1 = ((Posiciones.index(Barco1)))
Coordenadas[PBarco1] = Bote
PBarco2 = ((Posiciones.index(Barco2)))
Coordenadas[PBarco2] = Bote
PBarco3 = ((Posiciones.index(Barco3)))
Coordenadas[PBarco3]= Bote
tablero = tabla(Coordenadas)
print('\n',tablero)
passifTrue:
print('Ahora el enemigo esta\nposicionando sus barcos')
print('\nCargando...')
Varco1 = random.choice(Posiciones)
whileTrue:
Varco2 = random.choice(Posiciones)
if Varco2 == Varco1:
passelse:
breakwhileTrue:
Varco3 = random.choice(Posiciones)
if Varco3 == Varco1 or Varco3 == Varco2:
passelse:
break
Coordenadas[PBarco1]= Agua
Coordenadas[PBarco2]= Agua
Coordenadas[PBarco3]= Agua
tablero = tabla(Coordenadas)
PVarco1 = ((Posiciones.index(Varco1)))
Coordenadas[PVarco1]
PVarco2 = ((Posiciones.index(Varco2)))
Coordenadas[PVarco2]
PVarco3 = ((Posiciones.index(Varco3)))
Coordenadas[PVarco3]
time.sleep(5)
p('\n"Listo"\n')
time.sleep(1)
p('El enemigo ha posicionado sus barcos')
p('Es hora de jugar')
input('\n presiona cualquier tecla para continuar')
clear()
passifTrue:
print('\tHora de Atacar!!!')
print('Naves: Jefe estamos listos\npara el bombardeo aereo\n')
list_atack = []
list_atackR = []
Varcos = [Varco1,Varco2,Varco3]
Ataque = ()
AtaqueR = ()
BarcosS= []
BarcosRD= [] while partida:
print('Tus barcos restantes: \n',Barcos,' Vidas: ',vidas_jugador,'\nTe han atacado: \n',list_atackR)
tablero = tabla(Coordenadas)
print(tablero)
print('Barcos rivales destruidos: \n',BarcosRD,len(BarcosRD),'/ 3')
print('Haz atacado: \n',list_atack)
whilenot Ataque in Posiciones:
Ataque = input('Ingresa una coordenada\npara atacar: ...').upper()
if Ataque notin Posiciones:
print('Elige una coordenada Valida')
else:
print('atacando...\n')
list_atack.append(Ataque)
PAtaque = ((Posiciones.index(Ataque)))
if Ataque == Varco1 or Ataque == Varco2 or Ataque == Varco3:
print('\tHundiste un barco')
Coordenadas[PAtaque] = Bomba
tablero = tabla(Coordenadas)
vidas_bot -= 1
BarcosRD.append(Ataque)
else:
print('\tFallamos el tiro')
Coordenadas[PAtaque] = Bomba
tablero = tabla(Coordenadas)
time.sleep(2)
print('\nTurno del rival:')
print('te atacan...')
time.sleep(3)
zzz = 1while zzz:
AtaqueR = random.choice(Posiciones)
whilenot AtaqueR in list_atackR:
list_atackR.append(AtaqueR)
zzz -= 1''' PAtaqueR =
((Posiciones.index(AtaqueR)))
#Esto esra para imprimir el teclado
#enemigo xd'''
print('El rival ataco a: ...',AtaqueR,'\n')
if AtaqueR in Barcos:
Barcos.remove(AtaqueR)
'''
#Posicion del barco destruido(mio)
PBarcoD = (Barcos.index(AtaqueR))
Barcos.pop(PBarcoD)
'''if AtaqueR==Barco1 or AtaqueR==Barco2 or AtaqueR ==Barco3:
print('\tHundio uno de tus barcos')
vidas_jugador -= 1else:
print('\tEl rival fallo el tiro')
time.sleep(3)
if vidas_bot == 0:
print('\tGANASTE !!!\nFelicidades eres Increible :D')
partida -= 1
game4 -= 1
time.sleep(3)
input('\nPresiona cualquier tecla\npara volver al menu principal')
elif vidas_jugador == 0:
print('Perdiste :(')
print('Las naves enemigas estaban en : \n''\t',Varcos)
time.sleep(3)
input('\nPresiona cualquier tecla\npara volver al menu principal')
partida -= 1
game4 -= 1else:
pass
clear()
Ataque = ()
AtaqueR = ()
while game5:
print('Gracias por jugar\nBuena partida\n\t\t"BATLESHIPP"')
game2 += 1
game3 += 1
vidas_jugador = 3
vidas_bot = 3
partida = 1
print('Reiniciando el juego...')
time.sleep(8)
clear()
break