1
0
Fork 0

完善功能

master
zc 2023-09-13 20:15:22 +08:00
parent d34228cff5
commit 405954d123
8 changed files with 62 additions and 6 deletions

View File

@ -59991,11 +59991,11 @@ MonoBehaviour:
uiObjectData: uiObjectData:
- uiType: 0 - uiType: 0
ui: {fileID: 1352941224} ui: {fileID: 1352941224}
- uiType: 0 - uiType: 1
ui: {fileID: 1448946252} ui: {fileID: 1448946252}
- uiType: 0 - uiType: 2
ui: {fileID: 1248219822} ui: {fileID: 1248219822}
- uiType: 0 - uiType: 3
ui: {fileID: 834112896} ui: {fileID: 834112896}
--- !u!1 &1866609136 --- !u!1 &1866609136
GameObject: GameObject:

View File

@ -46,6 +46,7 @@ namespace UnityTest.ZXL
{ {
var highlightEffect = self.GetOrAddComponent<HighlightEffect>(); var highlightEffect = self.GetOrAddComponent<HighlightEffect>();
highlightEffect.highlighted = true; highlightEffect.highlighted = true;
self.GetComponent<ObjectComponent>().isCanClick = true;
} }
/// <summary> /// <summary>

View File

@ -18,6 +18,8 @@ namespace UnityTest.ZXL
/// </summary> /// </summary>
public string desc; public string desc;
public bool isCanClick;
public void Clicked() public void Clicked()
{ {
Debug.Log($"点击了{objectName}"); Debug.Log($"点击了{objectName}");
@ -34,6 +36,8 @@ namespace UnityTest.ZXL
#endif #endif
public void OnPointerClick(PointerEventData eventData) public void OnPointerClick(PointerEventData eventData)
{ {
if (!isCanClick) return;
isCanClick = false;
Clicked(); Clicked();
} }
} }

View File

@ -4,10 +4,25 @@ using UnityEngine;
namespace UnityTest.ZXL namespace UnityTest.ZXL
{ {
public class ObjectDataComponent : SerializedMonoBehaviour public class ObjectDataComponent : BaseAutoMono<ObjectDataComponent>
{ {
public List<ObjectData> objectData = new List<ObjectData>(); public List<ObjectData> objectData = new List<ObjectData>();
public List<ObjectData> highlightObjectData = new List<ObjectData>(); public List<ObjectData> highlightObjectData = new List<ObjectData>();
public Dictionary<string, ObjectComponent> objectComponents = new Dictionary<string, ObjectComponent>();
public GameObject GetObject(HighlightObjectType objectType)
{
var key = objectType.ToString();
if (objectComponents.TryGetValue(key, out ObjectComponent component))
{
return component.gameObject;
}
return null;
}
} }
[System.Serializable] [System.Serializable]
@ -17,7 +32,7 @@ namespace UnityTest.ZXL
public GameObject go; public GameObject go;
} }
public enum HighlightObject public enum HighlightObjectType
{ {
, ,
, ,

View File

@ -14,6 +14,14 @@ namespace UnityTest.ZXL
base.OnInit(); base.OnInit();
playable.Stop(); playable.Stop();
EventManager.Instance.Subscribe(TimelineEventArgs.EventId, TimelineEvent); EventManager.Instance.Subscribe(TimelineEventArgs.EventId, TimelineEvent);
EventManager.Instance.Subscribe(ClickObjectEventArgs.EventId, TimelineEvent);
}
protected override void OnLevel()
{
base.OnLevel();
EventManager.Instance.Unsubscribe(TimelineEventArgs.EventId, TimelineEvent);
EventManager.Instance.Unsubscribe(ClickObjectEventArgs.EventId, TimelineEvent);
} }
private void TimelineEvent(object sender, GameEventArgs e) private void TimelineEvent(object sender, GameEventArgs e)
@ -30,8 +38,14 @@ namespace UnityTest.ZXL
playable.Play(); playable.Play();
yield return isNext; yield return isNext;
playable.Pause();
AnimatorManager.Instance().Get("2-1"); // 等待点击
ObjectDataComponent.Instance().GetObject(HighlightObjectType.).HighlightOpen();
isNext = false;
yield return isNext;
playable.Resume();
} }
// 1-2 // 1-2

View File

@ -11,10 +11,32 @@ namespace UnityTest.ZXL
public void ShowUI(UIType uiType) public void ShowUI(UIType uiType)
{ {
foreach (var objectData in uiObjectData)
{
if (objectData.uiType == uiType)
{
objectData.ui.gameObject.SetActive(true);
}
}
} }
public void HideUI(UIType uiType) public void HideUI(UIType uiType)
{ {
foreach (var objectData in uiObjectData)
{
if (objectData.uiType == uiType)
{
objectData.ui.gameObject.SetActive(false);
}
}
}
public void HideAllUI()
{
foreach (var objectData in uiObjectData)
{
objectData.ui.gameObject.SetActive(false);
}
} }
#if UNITY_EDITOR #if UNITY_EDITOR