def settings_standard_bool(input_text, key):
     val = HostIO.get_input(
         f"Set {input_text} (should be 1, true, True, 0, false or False): ")
     if val in ['1', 'true', 'True']:
         SettingsParser.set_setting(key=key, value=1)
     elif val in ['0', 'false', 'False']:
         SettingsParser.set_setting(key=key, value=0)
     else:
         HostIO.print("Input is not a bool")
 def settings_standard_int(input_text, key, set=True):
     try:
         val = int(HostIO.get_input(f"Set {input_text}: "))
     except ValueError:
         print("Input is not an int")
         return
     if set:
         SettingsParser.set_setting(key=key, value=val)
     else:
         return val
Beispiel #3
0
    def run_game(boggle_class,
                 mockup=False,
                 moves=None,
                 predefined_boggle_instance=None):
        if SettingsParser.get_setting('number_players') < 2:
            if not mockup:
                HostIO.print(
                    "To few player for a game. The minimal number of players are 2.",
                    clear_screen=True)
                HostIO.get_input("Press any key to end\n")
            return -1

        PlayerIO.mockup = mockup
        if not mockup:
            HostIO.print(
                f"The game is {boggle_class.get_name()}!\nWaiting for players",
                direct_continue=True,
                clear_screen=True)
            HostNetworking.connect_to_clients(
                number_of_connections=SettingsParser.get_setting(
                    'number_players'),
                on_connect=GameLogic.on_client_connect)
            HostIO.print("All players registered. Begin game.")

        HostIO.clear()

        boggle_instance, \
        base_manager, \
        players, \
        processes = GameLogic.generate_game(boggle_class, moves, predefined_boggle_instance)

        try:
            for i in range(SettingsParser.get_setting('game_time'), 0, -1):
                HostIO.print(f'Time left: {i}',
                             clear_screen=True,
                             direct_continue=True)
                sleep(1)
        except KeyboardInterrupt:
            HostIO.print("\nTerminated")

        return GameLogic.terminate_game(boggle_instance, base_manager, players,
                                        processes, mockup)
 def settings_standard(input_text, key):
     SettingsParser.set_setting(
         key=key, value=HostIO.get_input(f"Set {input_text}: "))