Files
2025TapTapGameJam/Assets/Script/Gameplay/UI/PlayerGazeReminder.cs

60 lines
2.0 KiB
C#
Raw Normal View History

2025-10-21 13:07:48 +08:00
using Core;
using UnityEngine;
using Script.Gameplay.Player;
using TMPro;
using System.Collections.Generic;
2025-10-21 13:07:48 +08:00
namespace UI
{
public class PlayerGazeReminder : UIBase
{
[SerializeField] private GameObject reminderInteractPrefab;
[SerializeField] private GameObject reminderConnectPrefab;
[SerializeField] private GameObject reminderSetPointPrefab;
2025-10-21 13:07:48 +08:00
private PlayerInteractorController playerInteractorController;
private PlayerConnectController playerConnectController;
protected override void Awake()
{
base.Awake();
ControllerLocator.Instance.TryGetWait<PlayerInteractorController>(OnGetInteractorController);
ControllerLocator.Instance.TryGetWait<PlayerConnectController>(OnGetConnectController);
}
private void OnGetInteractorController(PlayerInteractorController controller)
{
playerInteractorController = controller;
playerInteractorController.OnGazeEnter += HandleInteractGazeEnter;
playerInteractorController.OnGazeExit += HandleInteractGazeExit;
}
2025-10-21 13:07:48 +08:00
private void HandleInteractGazeEnter(GameObject obj)
{
reminderInteractPrefab.SetActive(true);
2025-10-21 13:07:48 +08:00
}
2025-10-21 13:07:48 +08:00
private void HandleInteractGazeExit(GameObject obj)
{
reminderInteractPrefab.SetActive(false);
2025-10-21 13:07:48 +08:00
}
2025-10-21 13:07:48 +08:00
private void OnGetConnectController(PlayerConnectController controller)
{
playerConnectController = controller;
playerConnectController.OnGazeEnter += HandleConnectGazeEnter;
playerConnectController.OnGazeExit += HandleConnectGazeExit;
}
private void HandleConnectGazeEnter(GameObject obj)
{
reminderConnectPrefab.SetActive(true);
reminderSetPointPrefab.SetActive(true);
2025-10-21 13:07:48 +08:00
}
2025-10-21 13:07:48 +08:00
private void HandleConnectGazeExit(GameObject obj)
{
reminderConnectPrefab.SetActive(false);
reminderSetPointPrefab.SetActive(false);
2025-10-21 13:07:48 +08:00
}
}
}