This commit is contained in:
Naruse
2025-04-15 19:36:05 +08:00
parent dd51fb491d
commit ec8972d5d6
121 changed files with 30598 additions and 0 deletions

42
utils/config.py Normal file
View File

@@ -0,0 +1,42 @@
from dataclasses import asdict, dataclass
import os
import json
from dacite import from_dict
@dataclass
class ServerConfig:
IP: str
Port: int
@dataclass
class ConfigData:
LogLevel: str
GameServer: ServerConfig
SDKServer: ServerConfig
RegionName: str
def write_default_config():
config = ConfigData(
LogLevel="INFO",
GameServer=ServerConfig(IP="127.0.0.1", Port=23301),
SDKServer=ServerConfig(IP="127.0.0.1", Port=21000),
RegionName="NeonSR",
)
with open("Config.json", "w") as f:
f.write(json.dumps(asdict(config), indent=2))
return config
def load():
if not os.path.exists("Config.json"):
return ConfigData.write_default_config()
with open("Config.json", "r", encoding="utf-8") as f:
try:
return from_dict(ConfigData, json.load(f))
except Exception:
return ConfigData.write_default_config()
Config : ConfigData = ConfigData.load()