头和身体可切换
This commit is contained in:
@@ -4,7 +4,6 @@ using System.Linq;
|
||||
using AibisDream.Framework;
|
||||
using Cinemachine;
|
||||
using UnityEngine;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace AibisDream.FixSystem
|
||||
{
|
||||
@@ -57,6 +56,7 @@ namespace AibisDream.FixSystem
|
||||
// 处理内部索引
|
||||
_bodyModuleGroup = transform.Find("Body Module Group")?.gameObject;
|
||||
_headModuleGroup = transform.Find("Head Module Group")?.gameObject;
|
||||
CableSystem = transform.Find("Cable System").GetComponent<CableSystem>();
|
||||
if (transform.Find("HeatMapController"))
|
||||
{
|
||||
heatMapController = transform.Find("HeatMapController").GetComponent<HeatMapController>();
|
||||
@@ -188,34 +188,32 @@ namespace AibisDream.FixSystem
|
||||
switch (moduleState)
|
||||
{
|
||||
case ModuleState.Body:
|
||||
_bodyModuleGroup.SetActive(true);
|
||||
_headModuleGroup.SetActive(false);
|
||||
_bodyModuleGroup?.SetActive(true);
|
||||
_headModuleGroup?.SetActive(false);
|
||||
break;
|
||||
case ModuleState.Head:
|
||||
_bodyModuleGroup.SetActive(false);
|
||||
_headModuleGroup.SetActive(true);
|
||||
_bodyModuleGroup?.SetActive(false);
|
||||
_headModuleGroup?.SetActive(true);
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(moduleState), moduleState, null);
|
||||
}
|
||||
// 重新获取ModuleGroup
|
||||
var root = moduleState == ModuleState.Body ? _bodyModuleGroup : _headModuleGroup;
|
||||
BodyModules = root.GetComponentsInChildren<BodyModule>();
|
||||
BodyModules = root?.GetComponentsInChildren<BodyModule>();
|
||||
// 更改data
|
||||
_data.moduleState = moduleState;
|
||||
}
|
||||
}
|
||||
|
||||
[LoadIndex(2)]
|
||||
public class ModuleSystemData : IData
|
||||
{
|
||||
public ModuleState moduleState;
|
||||
|
||||
[JsonIgnore]
|
||||
public BodyModuleSystem bodyModuleSystem;
|
||||
|
||||
public IEnumerator Load()
|
||||
{
|
||||
bodyModuleSystem.SwitchModuleGroup(moduleState);
|
||||
FixSystemCenter.SystemDic.Get<BodyModuleSystem>().SwitchModuleGroup(moduleState);
|
||||
yield break;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user