refactor nickname

This commit is contained in:
bridge
2025-11-26 15:22:48 +08:00
parent 37b51b7650
commit bb8614407d
8 changed files with 147 additions and 19 deletions

View File

@@ -144,10 +144,14 @@ class AvatarLoadMixin:
# 设置外貌通过level获取完整的Appearance对象
avatar.appearance = get_appearance_by_level(data.get("appearance", 5))
# 恢复绰号
from src.classes.nickname_data import Nickname
avatar.nickname = Nickname.from_dict(data.get("nickname"))
# 设置行动与AI
avatar.thinking = data.get("thinking", "")
avatar.short_term_objective = data.get("short_term_objective", data.get("objective", "")) # 兼容旧存档
avatar.short_term_objective = data.get("short_term_objective", "")
avatar._action_cd_last_months = data.get("_action_cd_last_months", {})
# 加载长期目标

View File

@@ -89,6 +89,7 @@ class AvatarSaveMixin:
"alignment": self.alignment.name if self.alignment else None,
"persona_ids": [p.id for p in self.personas] if self.personas else [],
"appearance": self.appearance.level,
"nickname": self.nickname.to_dict() if self.nickname else None,
# 行动与AI
"current_action": current_action_dict,