This commit is contained in:
2026-06-04 10:42:23 +07:00
parent e7e90790c9
commit 9be2242378
4166 changed files with 53005 additions and 11401 deletions

View File

@@ -0,0 +1,44 @@
using System.Collections;
using UnityEngine;
using UnityEngine.EventSystems;
namespace Invector.vItemManager
{
public class vSetFirstSelectable : MonoBehaviour
{
public GameObject firstSelectable;
[Tooltip("True: Execute Selection Handler Event - False: Execute Pointer Enter Handler Event")]
public bool callSelectHandle = true;
public void ApplyFirstSelectable(GameObject firstSelectable)
{
this.firstSelectable = firstSelectable;
}
void OnEnable()
{
StartCoroutine(SetSelectableHandle(firstSelectable));
}
IEnumerator SetSelectableHandle(GameObject target)
{
if (this.enabled)
{
yield return new WaitForEndOfFrame();
SetSelectable(target);
}
}
void SetSelectable(GameObject target)
{
var pointer = new PointerEventData(EventSystem.current);
ExecuteEvents.Execute(EventSystem.current.currentSelectedGameObject, pointer, ExecuteEvents.pointerExitHandler);
EventSystem.current.SetSelectedGameObject(target, new BaseEventData(EventSystem.current));
if(callSelectHandle)
ExecuteEvents.Execute(target, pointer, ExecuteEvents.selectHandler);
else
ExecuteEvents.Execute(target, pointer, ExecuteEvents.pointerEnterHandler);
}
}
}