Files
Nathaniel Cosford f0e287b071 Mods for V1.3
2025-06-03 22:58:58 +09:30

49 lines
1.2 KiB
C#

using System;
using UnityEngine;
public class AimReference : MonoBehaviour
{
[NonSerialized]
public Vector3 positionOffset;
[NonSerialized]
public Quaternion rotationOffset;
[NonSerialized]
public AimReferenceGroup group;
[NonSerialized]
public int index = -1;
[NonSerialized]
public ScopeBase scopeBase;
[SerializeField]
private GameObject scopeBindingObject;
public bool asReference;
private void OnEnable()
{
if (!group)
{
return;
}
scopeBase = GetComponentInParent<ScopeBase>();
Transform refTrans = scopeBase ? scopeBase.transform : transform.parent;
rotationOffset = Quaternion.Inverse(refTrans.rotation) * transform.rotation;
positionOffset = refTrans.InverseTransformDirection(transform.position - refTrans.position);
group.UpdateEnableStates();
}
private void OnDisable()
{
if (!group)
{
return;
}
group.UpdateEnableStates();
}
public void UpdateEnableState(bool state)
{
if (scopeBindingObject)
{
scopeBindingObject.SetActive(state);
}
}
}