2023-05-08 15:56:10 +03:00

28 lines
856 B
C#

using UnityEngine;
using UnityEngine.XR.Interaction.Toolkit;
public class Quiver : XRBaseInteractable
{
[SerializeField] private GameObject arrowPrefab;
protected override void OnSelectEntered(SelectEnterEventArgs args)
{
base.OnSelectEntered(args);
CreateAndSelectArrow(args);
}
private void CreateAndSelectArrow(SelectEnterEventArgs args)
{
// Create arrow, force into interacting hand
Arrow arrow = CreateArrow(args.interactorObject.transform);
interactionManager.SelectEnter(args.interactorObject, arrow);
}
private Arrow CreateArrow(Transform orientation)
{
// Create arrow, and get arrow component
GameObject arrowObject = Instantiate(arrowPrefab, orientation.position, orientation.rotation);
return arrowObject.GetComponent<Arrow>();
}
}