CarmenSandiego/Assets/UdonSharp/Interacts/PickupUseCallback.cs
Jamie Greunbaum e8704b7595 - Jail phone now also uses standard VRCObjectSync.
- Live indicator placard no longer has a grabbable component.
- Choice cards now have their LightSync components inside their prefabs.
2026-05-14 20:08:04 -04:00

47 lines
1.0 KiB
C#

using UdonSharp;
using UnityEngine;
using VRC.SDKBase;
[UdonBehaviourSyncMode(BehaviourSyncMode.NoVariableSync)]
public class PickupUseCallback : UdonSharpBehaviour
{
[SerializeField] private UdonSharpBehaviour _CallbackObject;
[Space]
[SerializeField] private string _OnPickupCallbackFunction;
[SerializeField] private string _UseDownCallbackFunction;
[SerializeField] private string _UseUpCallbackFunction;
public override void OnPickup()
{
if (_OnPickupCallbackFunction != "" && Utilities.IsValid(_CallbackObject))
{
_CallbackObject.SendCustomEvent(_OnPickupCallbackFunction);
}
base.OnPickup();
}
public override void OnPickupUseDown()
{
if (_UseDownCallbackFunction != "" && Utilities.IsValid(_CallbackObject))
{
_CallbackObject.SendCustomEvent(_UseDownCallbackFunction);
}
base.OnPickupUseDown();
}
public override void OnPickupUseUp()
{
if (_UseUpCallbackFunction != "" && Utilities.IsValid(_CallbackObject))
{
_CallbackObject.SendCustomEvent(_UseUpCallbackFunction);
}
base.OnPickupUseUp();
}
}