71 lines
1.9 KiB
C#
71 lines
1.9 KiB
C#
![]() |
using G;
|
|||
|
using UnityEngine;
|
|||
|
public class Ef_toudan : Ef_base
|
|||
|
{
|
|||
|
public Vector3 m_targetPos = default(Vector3);
|
|||
|
|
|||
|
public float m_speed = 1.5f;
|
|||
|
|
|||
|
public Transform fx;
|
|||
|
|
|||
|
#pragma warning disable CS0414 // 字段“Ef_toudan.m_direction”已被赋值,但从未使用过它的值
|
|||
|
private Vector3 m_direction = default(Vector3);
|
|||
|
#pragma warning restore CS0414 // 字段“Ef_toudan.m_direction”已被赋值,但从未使用过它的值
|
|||
|
|
|||
|
#pragma warning disable CS0414 // 字段“Ef_toudan.m_endPosition”已被赋值,但从未使用过它的值
|
|||
|
private Vector3 m_endPosition = default(Vector3);
|
|||
|
#pragma warning restore CS0414 // 字段“Ef_toudan.m_endPosition”已被赋值,但从未使用过它的值
|
|||
|
|
|||
|
private Quaternion m_fromRotation;
|
|||
|
|
|||
|
private float m_currentLerp;
|
|||
|
|
|||
|
private void Start()
|
|||
|
{
|
|||
|
}
|
|||
|
|
|||
|
private void OnEnable()
|
|||
|
{
|
|||
|
m_transform = base.transform;
|
|||
|
if (base.m_user)
|
|||
|
{
|
|||
|
m_transform.position = base.m_user.position + Vector3.up * 0.03f;
|
|||
|
base.m_scriptUser = base.m_user.GetComponent<EntityCha>();
|
|||
|
if (base.m_scriptUser.target != null)
|
|||
|
{
|
|||
|
base.m_scriptUser.LookToTarget(base.m_scriptUser.target.transform);
|
|||
|
m_targetPos = base.m_scriptUser.GetTargetPos();
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void Update()
|
|||
|
{
|
|||
|
//if (base.m_user)
|
|||
|
{
|
|||
|
UserToTargetBezier();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void UserToTargetBezier()
|
|||
|
{
|
|||
|
float num = Vector3.Distance(m_targetPos, m_transform.position);
|
|||
|
if (num <= 0.1f)
|
|||
|
{
|
|||
|
if (m_scriptUser)
|
|||
|
{
|
|||
|
Transform transform = PrefabManager.Instance().Spawn(fx, m_targetPos, base.m_user.rotation);
|
|||
|
transform.GetComponent<Ef_fixed>().m_user = base.m_user;
|
|||
|
transform.GetComponent<Ef_fixed>().m_skillId = base.m_skillId;
|
|||
|
transform.GetComponent<Ef_fixed>().m_param[0] = m_param[0];
|
|||
|
}
|
|||
|
Destroy(this.gameObject);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Vector3 a = m_targetPos - m_transform.position;
|
|||
|
a.Normalize();
|
|||
|
m_transform.position += a * Time.deltaTime * m_speed;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|