Запись и чтение файла map_server
This commit is contained in:
		
							
								
								
									
										42
									
								
								dodo.py
									
									
									
									
									
								
							
							
						
						
									
										42
									
								
								dodo.py
									
									
									
									
									
								
							| @@ -7,18 +7,28 @@ from pathlib import Path | |||||||
|  |  | ||||||
| home_dir = Path.home() | home_dir = Path.home() | ||||||
| dir_server = f"{home_dir}/ARK_Servers/" | dir_server = f"{home_dir}/ARK_Servers/" | ||||||
|  | config_dodo = f"{home_dir}/.config/dodo/" | ||||||
| mods_id = "" | mods_id = "" | ||||||
| listen_server = True | listen_server = True | ||||||
|  | "------Узнаем список карт--------------" | ||||||
|  | try:  #пробуем открыть конфиг с названиями карт, если файла нет создаем пустой массив | ||||||
|  |         with open(config_dodo + "map_server") as x: #открытие конфига с названиями карт | ||||||
|  |         map_server = x.readlines()                  #Собираем по строчно все названия карт в массив | ||||||
|  |     except: | ||||||
|  |         map_server = [] | ||||||
|  | "--------------------------------------" | ||||||
|  |  | ||||||
| if not os.path.exists(dir_server): | def create_dir(directory): | ||||||
|     os.mkdir(dir_server) |     "Проверка и создание директории" | ||||||
| if not os.path.exists(f"{home_dir}/.config/dodo/"): |     if not os.path.exists(directory): | ||||||
|     os.mkdir(f"{home_dir}/.config/dodo/") |         os.mkdir(directory) | ||||||
|  |  | ||||||
|  | create_dir(dir_server) | ||||||
|  | create_dir(config_dodo) | ||||||
|  |  | ||||||
|  |  | ||||||
| def yaml_edit(): | def yaml_edit(map_server): | ||||||
|     count_maps = 1 |     count_maps = 1 | ||||||
|     map_server = [] |  | ||||||
|     print("""Укажите требуется ли кластер? |     print("""Укажите требуется ли кластер? | ||||||
|     1. Да |     1. Да | ||||||
|     2. Нет""") |     2. Нет""") | ||||||
| @@ -87,6 +97,11 @@ def yaml_edit(): | |||||||
|         max_players = input("") |         max_players = input("") | ||||||
|  |  | ||||||
|         yaml_create(cluster_server, map_server, name_server, port_server, query_port, password_server, max_players) |         yaml_create(cluster_server, map_server, name_server, port_server, query_port, password_server, max_players) | ||||||
|  |     "--------------Запись в файл map_server------------------------" | ||||||
|  |     with open(f"{config_dodo}/map_server", "w") as file: #создаем или открываем файл с картами | ||||||
|  |     for  line in map_server: # пробегаемся по массиву с картами | ||||||
|  |         file.write(line + '\n') # и записываем по строчно | ||||||
|  |     "--------------------------------------------------------------" | ||||||
|     return cluster_server, map_server, name_server, port_server, query_port, password_server, max_players, count_maps |     return cluster_server, map_server, name_server, port_server, query_port, password_server, max_players, count_maps | ||||||
|  |  | ||||||
|  |  | ||||||
| @@ -105,7 +120,7 @@ def yaml_create(cluster_server, map_server, name_server, port_server, query_port | |||||||
|             'ServerPath' : dir_server |             'ServerPath' : dir_server | ||||||
|         } |         } | ||||||
|     ] |     ] | ||||||
|     with open(f"{home_dir}/.config/dodo/{map_server[-1]}.yaml", 'w') as yamlfile: |     with open(config_dodo + f"{map_server[-1]}.yaml", 'w') as yamlfile: | ||||||
|         data = yaml.dump(settings_dodo, yamlfile) |         data = yaml.dump(settings_dodo, yamlfile) | ||||||
|         print("Конфиг создан") |         print("Конфиг создан") | ||||||
|  |  | ||||||
| @@ -153,7 +168,14 @@ def read_yaml(map_server): | |||||||
|         cluster_server = data['Cluster'] |         cluster_server = data['Cluster'] | ||||||
|     return cluster_server, name_server, port_server, query_port, password_server, max_players, dir_server, mods_id, listen_server |     return cluster_server, name_server, port_server, query_port, password_server, max_players, dir_server, mods_id, listen_server | ||||||
|  |  | ||||||
|  | c = input("""Введите | ||||||
|  | 1.Настроить сервера | ||||||
|  | 2.Запустить сервера""") | ||||||
|  | if c=="1": | ||||||
|  |     cluster_server, map_server, name_server, port_server, query_port, password_server, max_players, count_maps = yaml_edit(map_server) | ||||||
|  |     m = input("Запустить сервер? y/N") | ||||||
|  |     if m.lower() == "y": | ||||||
|  |         install(map_server) | ||||||
|  |  | ||||||
| cluster_server, map_server, name_server, port_server, query_port, password_server, max_players, count_maps = yaml_edit() | elif c=="2": | ||||||
|  |     install(map_server) | ||||||
| install(map_server) |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user