mirror of
				https://github.com/MarioSpore/Grinch-AP.git
				synced 2025-10-21 20:21:32 -06:00 
			
		
		
		
	Civ6: Use AutoPatchRegister to make patch downloadable on webhost #4752
This commit is contained in:
		| @@ -1,9 +1,10 @@ | ||||
| from dataclasses import dataclass | ||||
| import os | ||||
| import io | ||||
| from typing import TYPE_CHECKING, Dict, List, Optional, cast | ||||
| import zipfile | ||||
| from BaseClasses import Location | ||||
| from worlds.Files import APContainer | ||||
| from worlds.Files import APContainer, AutoPatchRegister | ||||
|  | ||||
| from .Enum import CivVICheckType | ||||
| from .Locations import CivVILocation, CivVILocationData | ||||
| @@ -25,18 +26,22 @@ class CivTreeItem: | ||||
|     ui_tree_row: int | ||||
|  | ||||
|  | ||||
| class CivVIContainer(APContainer): | ||||
| class CivVIContainer(APContainer, metaclass=AutoPatchRegister): | ||||
|     """ | ||||
|     Responsible for generating the dynamic mod files for the Civ VI multiworld | ||||
|     """ | ||||
|     game: Optional[str] = "Civilization VI" | ||||
|     patch_file_ending = ".apcivvi" | ||||
|  | ||||
|     def __init__(self, patch_data: Dict[str, str], base_path: str, output_directory: str, | ||||
|     def __init__(self, patch_data: Dict[str, str] | io.BytesIO, base_path: str = "", output_directory: str = "", | ||||
|                  player: Optional[int] = None, player_name: str = "", server: str = ""): | ||||
|         self.patch_data = patch_data | ||||
|         self.file_path = base_path | ||||
|         container_path = os.path.join(output_directory, base_path + ".apcivvi") | ||||
|         super().__init__(container_path, player, player_name, server) | ||||
|         if isinstance(patch_data, io.BytesIO): | ||||
|             super().__init__(patch_data, player, player_name, server) | ||||
|         else: | ||||
|             self.patch_data = patch_data | ||||
|             self.file_path = base_path | ||||
|             container_path = os.path.join(output_directory, base_path + ".apcivvi") | ||||
|             super().__init__(container_path, player, player_name, server) | ||||
|  | ||||
|     def write_contents(self, opened_zipfile: zipfile.ZipFile) -> None: | ||||
|         for filename, yml in self.patch_data.items(): | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 qwint
					qwint