From 742b52aa4078523cf666a12d5aaf0b63100a1927 Mon Sep 17 00:00:00 2001 From: shenjack <3695888@qq.com> Date: Tue, 3 Jan 2023 22:28:26 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E7=BB=A7=E7=BB=AD=E6=94=B9=E8=BF=9B?= =?UTF-8?q?=E4=B8=80=E4=BA=9B=E4=B8=9C=E8=A5=BF=20=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E5=BC=80=E5=90=AF=20crash=20report=20Test?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Difficult_Rocket/__init__.py | 2 +- Difficult_Rocket/utils/translate.py | 26 ++++++++++++++++++-------- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/Difficult_Rocket/__init__.py b/Difficult_Rocket/__init__.py index e536e71..0dba320 100644 --- a/Difficult_Rocket/__init__.py +++ b/Difficult_Rocket/__init__.py @@ -49,7 +49,7 @@ class _DR_option(Options): # tests playing: bool = False debugging: bool = False - crash_report_test: bool = False + crash_report_test: bool = True # window option gui_scale: int = 1 # default 1 2 -> 2x 3 -> 3x diff --git a/Difficult_Rocket/utils/translate.py b/Difficult_Rocket/utils/translate.py index e40e184..b55e685 100644 --- a/Difficult_Rocket/utils/translate.py +++ b/Difficult_Rocket/utils/translate.py @@ -40,18 +40,28 @@ class TranslateConfig: setattr(self, item, value) return self + def __copy__(self) -> 'TranslateConfig': + return TranslateConfig(raise_error=self.raise_error, + crack_normal=self.crack_normal, + insert_crack=self.insert_crack, + is_final=self.is_final, + keep_get=self.keep_get) + + def copy(self) -> 'TranslateConfig': + return self.__copy__() + class Translates: def __init__(self, value: Union[Dict[str, Any], list, tuple, str], config: Optional[TranslateConfig] = None, - get_list: List[str] = None, - error_get_list: List[str] = None): + get_list: List[Tuple[int, str]] = None, + error_get_list: List[Tuple[int, str]] = None): """ 一个用于翻译的东西 :param value: 翻译键节点 - :param config: - :param get_list: + :param config: 配置 + :param get_list: 获取列表 :param error_get_list: """ self.value: Union[Dict[str, Any], list, tuple] = value @@ -121,17 +131,17 @@ class Tr: GOOD """ - def __init__(self, language: str = None, raise_error: bool = False): + def __init__(self, language: str = None, config: Optional[TranslateConfig] = None): """ 诶嘿,我抄的MCDR :param language: Tr 所使用的的语言 - :param raise_error: 解析失败的时候是否报错 + :param config: 配置 """ self.language_name = language or DR_runtime.language self.translates: Dict = tools.load_file(f'configs/lang/{self.language_name}.toml') self.default_translate: Dict = tools.load_file(f'configs/lang/{DR_runtime.default_language}.toml') - self.不抛出异常 = raise_error - self.translates_cache = Translates(value=self.translates, raise_error=self.不抛出异常) + self.default_config = config or TranslateConfig() + self.translates_cache = Translates(value=self.translates, config=TranslateConfig().copy()) # def __call__(self, ): # ...