services.char_config_resolver
源文件
services/char_config_resolver.py· 由scripts/gen_api_docs.py自动生成,请勿手改
模块说明:
角色配置统一解析 — 四种来源合并,消除对 UI 层的反依赖。
来源优先级:skills 参数 > char_data 参数 > char_name → char_config.json → 默认技能
本模块同时提供 char_config.json 的读写入口(原先只是 Widgets 角色设置页里的 薄封装),使 services 层可直接使用,不再反向 import UI 层。
函数
char_config_path
python
def char_config_path() -> strchar_config.json 文件路径
定义行:23
load_all_data
python
def load_all_data() -> dict加载完整角色配置
定义行:28
save_all_data
python
def save_all_data(data: dict) -> None保存完整角色配置(原子写:同目录临时文件 + 替换)
定义行:33
get_character
python
def get_character(name: str) -> dict | None获取指定角色的完整配置
定义行:52
get_character_list
python
def get_character_list() -> list[str]获取所有角色名列表
定义行:58
get_default_resolver
python
def get_default_resolver() -> CharConfigResolver⚠️ 待补 docstring
此函数暂无 docstring,欢迎补充。
定义行:96
resolve_char_config
python
def resolve_char_config(char_name: str | None=None, char_data: dict | None=None, skills: dict | None=None) -> dict模块级便利函数(向后兼容),使用默认解析器
定义行:103
类
class CharConfigResolver
角色配置解析器 — 注入回调避免反依赖 UI 层
定义行:64
方法
__init__
python
def __init__(self, char_data_provider: Callable[[str], dict | None] | None=None)⚠️ 待补 docstring
此函数暂无 docstring,欢迎补充。
定义行:67
resolve
python
def resolve(self, char_name: str | None=None, char_data: dict | None=None, skills: dict | None=None) -> dict返回保证包含 'skills' 和 'market' 键的配置 dict
定义行:70