This commit is contained in:
2025-12-04 20:38:02 +08:00
parent 3290f9a270
commit f1c2c5a1ee
58 changed files with 11754 additions and 1365 deletions
@@ -62,6 +62,7 @@ namespace AibisDream.FixSystem
FixState.MemoryCut => new MemoryCutState(),
FixState.LogicCut => new LogicCutState(),
FixState.Dream => new DreamState(),
FixState.LanguageAnalysis => new LanguageAnalysisState(),
_ => new DefaultState()
};
@@ -87,6 +88,7 @@ namespace AibisDream.FixSystem
MemoryCut,
LogicCut,
Dream,
LanguageAnalysis,
}
public struct DefaultState : IState<FixState>
@@ -698,4 +700,61 @@ namespace AibisDream.FixSystem
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeOutAsync(0.1f);
}
}
public struct LanguageAnalysisState : IState<FixState>
{
public FixState GetState => FixState.LanguageAnalysis;
public void SetArgs(string args)
{
// 无
}
public IEnumerator Enter()
{
// 获取语言分析系统
var languageAnalysisManager = FixSystemCenter.SystemDic.Get<AibisDream.MiniGame.Language.LanguageAnalysisManager>();
if (languageAnalysisManager == null)
{
Debug.LogError("[LanguageAnalysisState] LanguageAnalysisManager 未找到!");
yield break;
}
// 先切 BodyModule(如果需要)
if (!CameraKit.Instance.EqualToCameraState(CameraEnum.BodyModule))
{
var bodyModule = FixSystemCenter.SystemDic.Get<BodyModuleSystem>();
bodyModule.SwitchModuleGroup(ModuleState.Head);
yield return CameraKit.Instance.SwitchCamera(CameraEnum.BodyModule);
}
// 打开语言分析系统视图
languageAnalysisManager.OpenView();
// 切换到语言分析相机
yield return CameraKit.Instance.SwitchCamera(CameraEnum.LanguageAnalysis);
}
public IEnumerator Exit()
{
var languageAnalysisManager = FixSystemCenter.SystemDic.Get<AibisDream.MiniGame.Language.LanguageAnalysisManager>();
var bodyModuleSystem = FixSystemCenter.SystemDic.Get<BodyModuleSystem>();
if (languageAnalysisManager != null)
{
// 关闭语言分析系统视图
languageAnalysisManager.CloseView();
}
// 重置身体模块
if (bodyModuleSystem != null)
{
bodyModuleSystem.ResetPlug();
}
yield break;
}
}
}