feat: woman移动交互 + medicalBox显示 + ReturnToHome场景重置
- TouchPositionHandler: 点击touchArray球体→woman移动到womanPointArray对应位置 - medicalBox: 初始隐藏,实验开始后显示 - ReturnToHome: 重置场景(恢复man/man2, 隐藏woman/manInjury/medicalBox, 切回主摄像机, 重置Animator) - ActivateExperimentObjects(): 实验启动时激活实验物件
This commit is contained in:
@@ -303,7 +303,7 @@ public class PageController : MonoBehaviour
|
||||
openingFlow.PlayOpeningFlow(() =>
|
||||
{
|
||||
Debug.Log("PageController: 片头动画完成,显示 ExperimentPanel");
|
||||
ShowPage(Page.Experiment);
|
||||
ActivateExperimentObjects(); ShowPage(Page.Experiment);
|
||||
|
||||
var stepManager = FindObjectOfType<StepManager>();
|
||||
if (stepManager != null)
|
||||
@@ -331,9 +331,45 @@ public class PageController : MonoBehaviour
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 激活实验场景物件(medicalBox等),在动画完成后调用
|
||||
/// </summary>
|
||||
private void ActivateExperimentObjects()
|
||||
{
|
||||
Debug.Log("PageController: [ActivateExperimentObjects] 显示实验物件");
|
||||
var medicalBox = GameObject.Find("medicalBox");
|
||||
if (medicalBox != null) medicalBox.SetActive(true);
|
||||
}
|
||||
|
||||
|
||||
public void ReturnToHome()
|
||||
{
|
||||
Debug.Log("PageController: [ReturnToHome] 返回首页");
|
||||
Debug.Log("PageController: [ReturnToHome] 返回首页并重置场景");
|
||||
|
||||
// 恢复 man 和 man2
|
||||
var man = GameObject.Find("man");
|
||||
if (man != null) man.SetActive(true);
|
||||
var man2 = GameObject.Find("man2");
|
||||
if (man2 != null) man2.SetActive(true);
|
||||
|
||||
// 隐藏实验专用物件
|
||||
var woman = GameObject.Find("woman");
|
||||
if (woman != null) woman.SetActive(false);
|
||||
var manInjury = GameObject.Find("manInjury");
|
||||
if (manInjury != null) manInjury.SetActive(false);
|
||||
var medicalBox = GameObject.Find("medicalBox");
|
||||
if (medicalBox != null) medicalBox.SetActive(false);
|
||||
|
||||
// 恢复主摄像机
|
||||
var mainCam = Camera.main;
|
||||
if (mainCam != null) mainCam.enabled = true;
|
||||
var cam2 = GameObject.Find("camera2");
|
||||
if (cam2 != null) { var c = cam2.GetComponent<Camera>(); if (c != null) c.enabled = false; }
|
||||
|
||||
// 重置 Animator 参数
|
||||
var manAnim = man != null ? man.GetComponent<Animator>() : null;
|
||||
if (manAnim != null) { manAnim.SetBool("IsStart", false); manAnim.SetBool("IsFull", false); }
|
||||
|
||||
ShowPage(Page.Home);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user