NAK_CVR_Mods/DesktopVRSwitch/VRModeTrackers/CVRPickupObjectTracker.cs
2023-06-19 19:44:23 -05:00

34 lines
No EOL
908 B
C#

using ABI.CCK.Components;
using UnityEngine;
namespace NAK.DesktopVRSwitch.VRModeTrackers;
public class CVRPickupObjectTracker : MonoBehaviour
{
private CVRPickupObject _pickupObject;
private Transform _storedGripOrigin;
public CVRPickupObjectTracker(CVRPickupObject pickupObject, Transform storedGripOrigin)
{
this._pickupObject = pickupObject;
this._storedGripOrigin = storedGripOrigin;
}
private void OnDestroy()
{
}
public void OnPostSwitch(bool intoVR)
{
if (_pickupObject != null)
{
// Drop the object if it is being held locally
if (_pickupObject._controllerRay != null)
_pickupObject._controllerRay.DropObject(true);
// Swap the grip origins
(_storedGripOrigin, _pickupObject.gripOrigin) = (_pickupObject.gripOrigin, _storedGripOrigin);
}
}
}