def posicionar_vehiculo(self, vehiculo): # Posiciona un vehiculo en la grilla # NO TESTEADA print("\nVEHICULO A POSICIONAR\n") print(vehiculo) print(self.mapa) if vehiculo.is_amorfo(): f.def_orientacion(vehiculo, s="vehiculo") coor_ok = False while not coor_ok: try: coor = f.get_coor(str="para posicionar la cabeza del vehiculo") coor_ = self.check_coordenadas(coor, vehiculo) coor_ok = True except(f.CasillaOcupada, IndexError) as err: print(err) self.insertar_vehiculo(coor_, vehiculo) print("\nVEHICULO POSICIONADO EXITOSAMENTE") return vehiculo
def posicionar_vehiculo(self, vehiculo): # Posiciona un vehiculo en la grilla # NO TESTEADA print("\nVEHICULO A POSICIONAR\n") print(vehiculo) print(self.mapa) if vehiculo.is_amorfo(): f.def_orientacion(vehiculo, s="vehiculo") coor_ok = False while not coor_ok: try: coor = f.get_coor(str="para posicionar la cabeza del vehiculo") coor_ = self.check_coordenadas(coor, vehiculo) coor_ok = True except (f.CasillaOcupada, IndexError) as err: print(err) self.insertar_vehiculo(coor_, vehiculo) print("\nVEHICULO POSICIONADO EXITOSAMENTE") return vehiculo
def get_coor(self): # NO TESTEADA coor = f.get_coor(str="del sector Aire donde desea atacar") return [coor, f.get_coor_around(coor)]
def get_coor(self): # Permite obtener la coordenada donde se quiere atacar # NO TESTEADA return [f.get_coor(str="del sector Mar donde desea atacar")]
def menu_moverse(self, veh): # Menu moverse # NO TESTEADA in_menu_moverse = True while in_menu_moverse: sector = self.mapa.get_sector_vehiculo(veh) if veh.sym != "Ⓛ" and veh.sym != "Ⓔ": mov = f.get_opciones("MOVIMIENTOS", sector.mov_disp(veh), None) if not mov: return True else: sector.mover_vehiculo(veh, mov) self.stats.mover(veh) s = "{0} movido en direccion {1}".format(veh.name, mov) self.radar.agregar_turno(s) return False elif veh.sym == "Ⓛ": coor_ok = False while not coor_ok: a = "donde desea ubicar cabeza de la lancha" coor = f.get_coor(a, sector) cf = coor[0] cc = coor[1] if veh.is_horizontal() and not cc+1 > 11: if sector.grilla[cf][cc+1] is None: a = sector.encontrar_coordenadas(veh) sector.eliminar_vehiculo(a) sector.grilla[cf][cc] = veh sector.grilla[cf][cc+1] = veh coor_ok = True else: a = "\nEl segundo componente queda en cas ocupada!" print(a) elif not veh.is_horizontal() and not cf+1 > 11: if sector.grilla[cf+1][cc] is None: a = sector.encontrar_coordenadas(veh) sector.eliminar_vehiculo(a) sector.grilla[cf][cc] = veh sector.grilla[cf+1][cc] = veh coor_ok = True else: a = "\nEl segundo componente queda en cas ocupada!" print(a) else: a = "\nEl segundo componente traspasa el tablero!" print(a) self.stats.mover(veh) self.radar.agregar_turno("Lancha movida exitosamente") return False elif veh.sym == "Ⓔ": coor_ok = False while not coor_ok: coor = f.get_coor("donde desea ubicar el centro (es 3x3)",sector) res = sector.revisar_around_coor(coor) if isinstance(res,list): coor_ok = True sector.eliminar_vehiculo(sector.encontrar_coordenadas(veh)) for i,j in res: sector.grilla[i][j] = veh exploracion = veh.explorar(res, self.juego.el_otro(self).mapa) self.stats.mover(veh) s = "Explorador revelo {} vehiculos".format(exploracion[0]) if exploracion[1]: s += " en sector maritimo enemigo y si revelo ubicacion" s1 = "En turno enemigo ud fue explorado en " s1 += " ".join([abc[i[0]]+str(i[1]) for i in res]) self.juego.el_otro(self).radar.agregar_anuncio(s1) self.juego.el_otro(self).anuncio = s1 elif not exploracion[1]: s += " en sector maritimo enemigo y no revelo ubicacion" print("\n" + s) self.radar.agregar_turno(s) else: print(res) return False