Files
dungeons/Assets/HurricaneVR/Framework/Scripts/Weapons/Guns/HVRAutoDropMagazine.cs

36 lines
961 B
C#

using Assets.HurricaneVR.Framework.Shared.Utilities;
using HurricaneVR.Framework.Core;
using HurricaneVR.Framework.Core.Grabbers;
using UnityEngine;
namespace HurricaneVR.Framework.Weapons.Guns
{
public class HVRAutoDropMagazine : HVRSocket
{
public HVRSocket MagazineSocket;
protected override void OnHoverEnter(HVRGrabbable grabbable)
{
ForceRelease();
if (MagazineSocket && IsValid(grabbable) && grabbable.HandGrabbers.Count > 0)
{
Debug.Log($"drop");
MagazineSocket.ForceRelease();
}
}
public override bool IsValid(HVRGrabbable grabbable)
{
if (!MagazineSocket || !MagazineSocket.IsGrabbing)
return false;
return MagazineSocket.IsValid(grabbable);
}
public override bool CanGrab(HVRGrabbable grabbable)
{
return false;
}
}
}