51 lines
878 B
C#
51 lines
878 B
C#
using UFS3;
|
|
using UnityEngine;
|
|
|
|
public class Rod : MonoBehaviour, IInitializable<RodData>
|
|
{
|
|
[SerializeField]
|
|
private Rigidbody rodTip;
|
|
|
|
[SerializeField]
|
|
private Transform seatClamp;
|
|
|
|
private RodGuides rodGuides;
|
|
|
|
private RodIK rodIk;
|
|
|
|
public Transform RodTipStatic;
|
|
|
|
private RodData _RodData;
|
|
|
|
public RodGuides RodGuides => rodGuides;
|
|
|
|
public Rigidbody RodTipBone => rodTip;
|
|
|
|
public float RodPower => _RodData.strength;
|
|
|
|
public float Length => _RodData.length;
|
|
|
|
public void AttachReel(Transform reel)
|
|
{
|
|
reel.parent = seatClamp;
|
|
reel.localPosition = Vector3.zero;
|
|
reel.localRotation = Quaternion.identity;
|
|
}
|
|
|
|
private void Awake()
|
|
{
|
|
rodIk = GetComponent<RodIK>();
|
|
rodGuides = GetComponent<RodGuides>();
|
|
}
|
|
|
|
public void SetIKTarget(Transform target)
|
|
{
|
|
rodIk.SetIKTarget(target);
|
|
}
|
|
|
|
public void Initialize(RodData Value)
|
|
{
|
|
_RodData = Value;
|
|
}
|
|
}
|