diff --git a/dodo.py b/dodo.py index 14aa924..7788b9f 100755 --- a/dodo.py +++ b/dodo.py @@ -23,9 +23,9 @@ list_config.remove('.directory') def print_line(text): "Добавление тире вокруг текста, потом сюда можно поместить и расскраску текста" - print("-"*20) - print(text) - print("-"*20) + print(Fore.YELLOW + "-"*25) + print(Fore.GREEN + text) + print(Fore.YELLOW + "-"*25 + Fore.RESET_ALL) def create_dir(directory): @@ -38,7 +38,10 @@ def check_int(number=""): "Проверка на ввод числа" while True: try: - x = int(input(number)) + x = input(number) + x = x.replace(' ', '') + x = x.replace(',', '') + x = int(x) return x except ValueError: print("Введите число") @@ -62,28 +65,37 @@ def config(map_server=list_config): cluster_server = True else: cluster_server = False + if cluster_server == True: cluster_id = input("Укажите id для кластера, любое сочетание символов: \n") create_dir(dir_server + cluster_id) cluster_dir_override = (dir_server + cluster_id) + if map_server != []: - print("Уже установленные карты: ", map_server) + print("Уже установленные карты: ") + for i in map_server: + print(i) + count_maps = check_int("Укажите количество карт: \n") - for i in range(int(count_maps)): - amount_map = check_int("""Выберите карту из списка указав номер - 1. The Island - 2. The Center - 3. Scorched Earth - 4. Ragnarok - 5. Aberration - 6. Extinction - 7. Valguero - 8. Genesis: Part 1 - 9. Crystal Isles - 10. Genesis: Part 2 - 11. Lost Island - 12. Fjordur - : """) + for i in range(count_maps): + while True: + os.system("clear") + amount_map = check_int("""Выберите карту из списка указав номер + 1. The Island + 2. The Center + 3. Scorched Earth + 4. Ragnarok + 5. Aberration + 6. Extinction + 7. Valguero + 8. Genesis: Part 1 + 9. Crystal Isles + 10. Genesis: Part 2 + 11. Lost Island + 12. Fjordur + : """) + if 0<=amount_map<=12: + break match amount_map: case 1: map_server.append("TheIsland") @@ -140,12 +152,24 @@ def yaml_create(cluster_server, map_server, name_server, port_server, query_port settings_dodo[0]['clusterdir'] = cluster_dir_override with open(config_dodo + f"{map_server[-1]}", 'w') as yamlfile: data = yaml.dump(settings_dodo, yamlfile) - print("Конфиг создан") + print(Fore.GREEN + "Конфиг создан" + Fore.RESET_ALL) @dodo.command() def start(map_server=list_config): map_choise = [] - map_list = check_int(map_server) + while True: + "Проверка на выбор имеющихся карт" + for i in range(len(map_server)): + print(f"{i}) {map_server[i]}") + map_list = check_int(map_server) + for k in range(map_list): + if 0>map_list[k]>len(map_list) and len(map_list)>len(map_server): + print("Укажите карты для установки в формате 1,3,5 или 145 или 1 2 3") + else: + break + + + for j in str(map_list): map_choise.append(map_server[int(j) - 1])