def menu_options(p_counter): selection = player_turn(p_counter) if selection == 1: #LISTO action = Entry(players, p_counter) action.a_entry() var = change_player(p_counter) if var == 1: return 0 elif selection == 2: #LISTO block = Counter_attack(p_counter, players, 2) block = block.attack() if block == 0: #Nadie quiso contraatacar, entonces se ejecuta la acción. action = Abroad_help(players, p_counter) action.a_abroad_help() else: #En este caso se puede hacer un desafío attacking = block #El jugador "block" quiso contraatacar action = Challenge(attacking - 1, players, 2, 2) a, b, c = action.challenge_player() if a == 0 and b == 0: #Nadie quiso desafiar el contra-ataque, entonces no se ejecuta la acción y le toca al siguiente jugador var = change_player(p_counter) if var == 1: return 0 elif a == 0 and b == 1: #El que contra-atacó mintió, la acción si se ejecuta action = Abroad_help(players, p_counter) action.a_abroad_help() elif b == 3: if a == 1: players[attacking - 1]._Players__influence1 = return_card( players[attacking - 1]._Players__influence1) elif a == 2: players[attacking - 1]._Players__influence2 = return_card( players[attacking - 1]._Players__influence2) var = change_player(p_counter) if var == 1: return 0 elif selection == 3: #LISTO action = Hit(players, p_counter) result = action.hit() if result == 0: menu_options(p_counter) var = change_player(p_counter) if var == 1: return 0 elif selection == 4: #LISTO action = Challenge( p_counter, players, 1, 4) #El 1 significa que se verifican las influencias de acciones a, b, c = action.challenge_player() if a == 0 and b == 0: #Nadie quiso desafiar, entonces se ejecuta la acción action = Tax(players, p_counter) action.a_tax() elif b == 3: if a == 1: players[p_counter]._Players__influence1 = return_card( players[p_counter]._Players__influence1) elif a == 2: action = Tax(players, p_counter) action.a_tax() players[p_counter]._Players__influence2 = return_card( players[p_counter]._Players__influence2) action = Tax(players, p_counter) action.a_tax() var = change_player(p_counter) if var == 1: return 0 elif selection == 5: #ASESINATO--------------- verif = Murder(players, p_counter) verif = verif.verif() if verif == 0: menu_options(p_counter) action = Challenge(p_counter, players, 1, 5) a, b, c = action.challenge_player() if a == 0 and b == 0: #Nadie quiso desafiar, luego van los contra-ataques action = Counter_attack(p_counter, players, 5) player_attack = action.attack() if player_attack == 0: #Nadie quiso contra-atacar ni desafiar, entonces se ejecuta la acción action = Murder(players, p_counter) action.murder() else: #Nadie quiso desafiar pero si contra-atacar, se pregunta si desafían al que contra-atacó (supuestamente tiene a la Condesa) action = Challenge(player_attack - 1, players, 2, 5) a, b, c = action.challenge_player( ) #c es el jugador que desafió if a == 0 and b == 0: #Nadie desafía el contra-ataque, la acción no se cumple, pierde las monedas players[p_counter]._Players__coins = -3 var = change_player(p_counter) if var == 1: return 0 elif a == 0 and b == 1: #Pierde el desafío el que contra-atacó, se ejecuta la acción action = Murder(players, p_counter) action.murder() elif b == 3: #El que contraatacó ganó el desafío. if a == 1: players[c]._Players__influence1 = return_card( players[c]._Players__influence1) else: players[c]._Players__influence2 = return_card( players[c]._Players__influence2) elif a == 0 and b == 1: #Alguien quiso contra-atacar, el jugador pierde el desafío entonces no realiza la acción y cambia de turno var = change_player(p_counter) if var == 1: return 0 elif b == 3: #Si poseía la carta influencia, entonces pasa a contra-ataques if a == 1: players[p_counter]._Players__influence1 = return_card( players[p_counter]._Players__influence1) elif a == 2: players[p_counter]._Players__influence2 = return_card( players[p_counter]._Players__influence2) action = Counter_attack(p_counter, players, 5) player_attack = action.attack() if player_attack == 0: #Nadie quiso contra-atacar ni desafiar, entonces se ejecuta la acción action = Murder(players, p_counter) action.murder() else: #Nadie quiso desafiar pero si contra-atacar, se pregunta si desafían al que contra-atacó (supuestamente tiene a la Condesa) action = Challenge(player_attack - 1, players, 2, 5) a, b, c = action.challenge_player( ) #c es el jugador que desafió if a == 0 and b == 0: #Nadie desafía el contra-ataque, la acción no se cumple var = change_player(p_counter) if var == 1: return 0 elif a == 0 and b == 1: #Pierde el desafío el que contra-atacó, se ejecuta la acción action = Murder(players, p_counter) action.murder() elif b == 3: #El que contraatacó ganó el desafío. if a == 1: players[c]._Players__influence1 = return_card( players[c]._Players__influence1) else: players[c]._Players__influence2 = return_card( players[c]._Players__influence2) var = change_player(p_counter) if var == 1: return 0 elif selection == 6: #EXTORSIÓN------------- action = Challenge(p_counter, players, 1, 6) a, b, c = action.challenge_player() if a == 0 and b == 0: #Nadie quiso contra-atacar, luego van los contra-ataques action = Counter_attack(p_counter, players, 6) player_attack = action.attack() if player_attack == 0: #Nadie quiso contra-atacar ni desafiar, entonces se ejecuta la acción action = Extortion(players, p_counter) action.extortion() else: #Nadie quiso desafiar pero si contra-atacar, se pregunta si desafían al que contra-atacó (supuestamente tiene a la Condesa) action = Challenge(player_attack - 1, players, 2, 6) a, b, c = action.challenge_player( ) #c es el jugador que desafió if a == 0 and b == 0: #Nadie desafía el contra-ataque, la acción no se cumple var = change_player(p_counter) if var == 1: return 0 elif a == 0 and b == 1: #Pierde el desafío el que contra-atacó, se ejecuta la acción action = Extortion(players, p_counter) action.extortion() elif b == 3: #El que contraatacó ganó el desafío. if a == 1: players[c]._Players__influence1 = return_card( players[c]._Players__influence1) else: players[c]._Players__influence2 = return_card( players[c]._Players__influence2) elif a == 0 and b == 1: #el jugador pierde el desafío entonces no realiza la acción y cambia de turno var = change_player(p_counter) if var == 1: return 0 elif b == 3: #Si poseía la carta influencia, pasa a contra-ataque if a == 1: players[p_counter]._Players__influence1 = return_card( players[p_counter]._Players__influence1) elif a == 2: players[p_counter]._Players__influence2 = return_card( players[p_counter]._Players__influence2) action = Counter_attack(p_counter, players, 5) player_attack = action.attack() if player_attack == 0: #Nadie quiso contra-atacar ni desafiar, entonces se ejecuta la acción action = Extortion(players, p_counter) action.extortion() else: #Nadie quiso desafiar pero si contra-atacar, se pregunta si desafían al que contra-atacó (supuestamente tiene a la Condesa) action = Challenge(player_attack - 1, players, 2, 5) a, b, c = action.challenge_player( ) #c es el jugador que desafió if a == 0 and b == 0: #Nadie desafía el contra-ataque, la acción no se cumple var = change_player(p_counter) if var == 1: return 0 elif a == 0 and b == 1: #Pierde el desafío el que contra-atacó, se ejecuta la acción action = Extortion(players, p_counter) action.extortion() elif b == 3: #El que contraatacó ganó el desafío. if a == 1: players[c]._Players__influence1 = return_card( players[c]._Players__influence1) else: players[c]._Players__influence2 = return_card( players[c]._Players__influence2) elif selection == 7: #LISTA------------- action = Challenge(p_counter, players, 1, 7) a, b, c = action.challenge_player() if a == 0 and b == 0: #Nadie quiso desafiar, entonces se hace la acción action = Change(players, p_counter, influences) action.change_cards() elif a == 0 and b == 1: #el jugador pierde el desafío entonces no realiza la acción y cambia de turno var = change_player(p_counter) if var == 1: return 0 elif b == 3: #Si poseía la carta influencia, realiza la acción if a == 1: players[p_counter]._Players__influence1 = return_card( players[p_counter]._Players__influence1) elif a == 2: players[p_counter]._Players__influence2 = return_card( players[p_counter]._Players__influence2) action = Change(players, p_counter, influences) action.change_cards() var = change_player(p_counter) if var == 1: return 0