2021-09-08 23:38:34 +08:00
|
|
|
# -------------------------------
|
|
|
|
# Difficult Rocket
|
2022-06-27 16:51:14 +08:00
|
|
|
# Copyright © 2021-2022 by shenjackyuanjie 3695888@qq.com
|
2021-09-08 23:38:34 +08:00
|
|
|
# All rights reserved
|
|
|
|
# -------------------------------
|
|
|
|
|
2021-04-02 23:31:54 +08:00
|
|
|
"""
|
2021-01-24 18:26:56 +08:00
|
|
|
writen by shenjackyuanjie
|
2021-09-02 22:47:10 +08:00
|
|
|
mail: 3695888@qq.com
|
2021-08-13 12:25:29 +08:00
|
|
|
github: @shenjackyuanjie
|
2021-09-02 22:47:10 +08:00
|
|
|
gitee: @shenjackyuanjie
|
2021-04-02 23:31:54 +08:00
|
|
|
"""
|
2021-09-02 22:47:10 +08:00
|
|
|
|
2022-11-08 20:18:01 +08:00
|
|
|
from typing import Any, Dict, Callable, Union, Tuple, List, get_type_hints, Type
|
|
|
|
|
|
|
|
from Difficult_Rocket.utils.typings import Options
|
2022-08-03 20:22:36 +08:00
|
|
|
|
2022-04-08 23:07:41 +08:00
|
|
|
from libs.MCDR.version import Version
|
2022-02-16 13:36:26 +08:00
|
|
|
|
2022-08-23 22:51:01 +08:00
|
|
|
game_version = Version("0.6.3")
|
2022-02-08 17:15:09 +08:00
|
|
|
__version__ = game_version
|
2021-01-24 18:26:56 +08:00
|
|
|
|
2021-11-06 19:07:32 +08:00
|
|
|
|
2022-08-03 20:22:36 +08:00
|
|
|
|
2022-08-12 21:07:36 +08:00
|
|
|
class _DR_option(Options):
|
|
|
|
"""
|
|
|
|
DR 的整体配置存储类
|
|
|
|
"""
|
|
|
|
# runtime options
|
2022-08-21 14:59:35 +08:00
|
|
|
InputBox_use_TextEntry: bool = False
|
|
|
|
record_threads: bool = True
|
2022-09-03 22:35:57 +08:00
|
|
|
use_cProfile: bool = False
|
2022-11-08 20:18:01 +08:00
|
|
|
use_local_logging: bool = False
|
2022-08-12 21:07:36 +08:00
|
|
|
|
|
|
|
# tests
|
2022-08-21 14:59:35 +08:00
|
|
|
playing: bool = False
|
|
|
|
debugging: bool = False
|
|
|
|
crash_report_test: bool = True
|
2022-08-12 21:07:36 +08:00
|
|
|
|
|
|
|
|
|
|
|
class _DR_runtime(Options):
|
|
|
|
"""
|
|
|
|
DR 的运行时配置
|
|
|
|
"""
|
2022-08-21 14:59:35 +08:00
|
|
|
# game statue
|
|
|
|
DR_version: Version = game_version
|
|
|
|
|
2022-08-12 21:07:36 +08:00
|
|
|
# run status
|
|
|
|
start_time_ns: int = None
|
|
|
|
client_setup_time_ns: int = None
|
|
|
|
server_setup_time_ns: int = None
|
|
|
|
|
|
|
|
# game options
|
|
|
|
_language = 'zh-CN'
|
|
|
|
|
2022-10-15 17:38:35 +08:00
|
|
|
def __init__(self, **kwargs):
|
|
|
|
super().__init__(**kwargs)
|
2022-10-02 22:24:38 +08:00
|
|
|
self.__options = {'language': self.language}
|
2022-08-21 14:59:35 +08:00
|
|
|
|
2022-08-12 21:07:36 +08:00
|
|
|
@property
|
|
|
|
def language(self):
|
|
|
|
return self._language
|
|
|
|
|
|
|
|
@language.setter
|
|
|
|
def language(self, value: str):
|
|
|
|
if value == self._language:
|
|
|
|
return
|
|
|
|
assert isinstance(value, str), "DR language MUST be string"
|
|
|
|
self._language = value
|
|
|
|
from Difficult_Rocket.utils import translate
|
|
|
|
translate.tr._update_lang()
|
|
|
|
|
|
|
|
|
2022-08-21 14:59:35 +08:00
|
|
|
# _DR_runtime.add_option('language', _DR_runtime.language)
|
2022-08-12 21:07:36 +08:00
|
|
|
|
|
|
|
|
|
|
|
DR_option = _DR_option()
|
|
|
|
DR_runtime = _DR_runtime()
|
2022-11-08 20:18:01 +08:00
|
|
|
print(DR_option.option())
|
|
|
|
print(_DR_option.option())
|
|
|
|
_DR_option.use_cProfile = True
|
|
|
|
print(_DR_option.option())
|
|
|
|
# print(_DR_option.__dict__)
|
|
|
|
# print(DR_option.__dir__())
|
|
|
|
# print(_DR_option.__dir__)
|
2022-08-12 21:07:36 +08:00
|
|
|
|
|
|
|
if DR_option.playing:
|
2022-11-08 20:18:01 +08:00
|
|
|
from Difficult_Rocket.utils import new_thread
|
2021-08-13 12:25:29 +08:00
|
|
|
|
2022-06-21 20:15:36 +08:00
|
|
|
|
2022-06-21 10:17:13 +08:00
|
|
|
def think_it(something):
|
|
|
|
return something
|
|
|
|
|
|
|
|
|
2021-10-31 23:26:32 +08:00
|
|
|
@new_thread('think')
|
|
|
|
def think(some_thing_to_think):
|
2022-06-21 10:17:13 +08:00
|
|
|
gotcha = think_it(some_thing_to_think)
|
2021-10-31 23:26:32 +08:00
|
|
|
return gotcha
|