Swap order: Shose now triggers Ping, and Ping triggers ChanraoTuibu. Final voice moved to ChanraoTuibu.
This commit is contained in:
@@ -2,7 +2,7 @@ using UnityEngine;
|
||||
|
||||
public class ChanraoTuibuHandler : MonoBehaviour
|
||||
{
|
||||
public GameObject nextObject;
|
||||
|
||||
private MeshRenderer _outlineMesh;
|
||||
private float _lastClickTime;
|
||||
private bool _isFinished;
|
||||
@@ -76,20 +76,15 @@ public class ChanraoTuibuHandler : MonoBehaviour
|
||||
var mr = GetComponent<MeshRenderer>(); if (mr != null) mr.enabled = true;
|
||||
foreach (var r in GetComponentsInChildren<Renderer>(true)) { if (_outlineMesh != null && r == _outlineMesh) continue; r.enabled = true; } // 显示模型
|
||||
|
||||
// 如果由于意外 nextObject 丢失了,手动把它指向 ping.004
|
||||
if (nextObject == null)
|
||||
// 播放最后一句语音
|
||||
var am = FindObjectOfType<AudioManager>();
|
||||
if (am != null)
|
||||
{
|
||||
var mi = GameObject.Find("manInjury");
|
||||
if (mi != null)
|
||||
{
|
||||
var p004 = mi.transform.Find("ping.004");
|
||||
if (p004 != null) nextObject = p004.gameObject;
|
||||
}
|
||||
#if UNITY_EDITOR
|
||||
var finishClip = UnityEditor.AssetDatabase.LoadAssetAtPath<AudioClip>("Assets/Audio/people/伤员一切正常,包扎完毕.mp3");
|
||||
if (finishClip != null) am.PlayVoice(finishClip);
|
||||
#endif
|
||||
}
|
||||
|
||||
// 激活下一个(ping.004)
|
||||
if (nextObject != null) { nextObject.SetActive(true); Debug.Log($"[ChanraoTuibu] → {nextObject.name}"); }
|
||||
else Debug.LogError("[ChanraoTuibu] 致命错误:nextObject 依然是 null!找不到 ping.004");
|
||||
}
|
||||
|
||||
public void ResetState()
|
||||
@@ -99,7 +94,7 @@ public class ChanraoTuibuHandler : MonoBehaviour
|
||||
var smr = GetComponent<SkinnedMeshRenderer>(); if (smr != null) smr.enabled = false;
|
||||
foreach (var r in GetComponentsInChildren<Renderer>(true)) { if (_outlineMesh != null && r == _outlineMesh) continue; r.enabled = false; }
|
||||
if (_outlineMesh != null) _outlineMesh.enabled = true;
|
||||
if (nextObject != null) { nextObject.SetActive(false); var p = nextObject.GetComponent<PingClickHandler>(); if (p != null) p.UndoShow(); }
|
||||
|
||||
StopAllCoroutines();
|
||||
StartCoroutine(BlinkOutline());
|
||||
}
|
||||
|
||||
@@ -122,14 +122,22 @@ public class PingClickHandler : MonoBehaviour
|
||||
|
||||
if (activePingCount == 0)
|
||||
{
|
||||
Debug.Log("[PingClick] 所有的 ping 都已经绑成 chanrao 了!播放完成语音。");
|
||||
var am = FindObjectOfType<AudioManager>();
|
||||
if (am != null)
|
||||
Debug.Log("[PingClick] 所有的 ping 都已经绑成 chanrao 了!现在激活 chanraotuibu。");
|
||||
|
||||
var chanraotuibu = GameObject.Find("chanraotuibu");
|
||||
if (chanraotuibu == null)
|
||||
{
|
||||
#if UNITY_EDITOR
|
||||
var finishClip = UnityEditor.AssetDatabase.LoadAssetAtPath<AudioClip>("Assets/Audio/people/伤员一切正常,包扎完毕.mp3");
|
||||
if (finishClip != null) am.PlayVoice(finishClip);
|
||||
#endif
|
||||
var mi = GameObject.Find("manInjury");
|
||||
if (mi != null)
|
||||
{
|
||||
var t = mi.transform.Find("chanraotuibu");
|
||||
if (t != null) chanraotuibu = t.gameObject;
|
||||
}
|
||||
}
|
||||
|
||||
if (chanraotuibu != null)
|
||||
{
|
||||
chanraotuibu.SetActive(true);
|
||||
}
|
||||
|
||||
// 隐藏视频面板
|
||||
|
||||
Reference in New Issue
Block a user