c1_unity/Assets/Scripts/Component/Battle/BattleControlSphereCollider.cs
2023-04-03 11:04:31 +08:00

49 lines
949 B
C#

using UnityEngine;
namespace BF
{
public class BattleControlSphereCollider : BattleControlCollider
{
private SphereCollider sphereCollider;
private void Awake()
{
sphereCollider = gameObject.AddComponent<SphereCollider>();
}
public void SetupCollisionBody(float collisionRadius, float x, float z)
{
sphereCollider.center = Vector3.zero;
sphereCollider.radius = collisionRadius;
offset = new Vector3(x, 0.0f, z);
}
public override void SetColliderEnabled(bool enabled)
{
sphereCollider.enabled = enabled;
}
private void FixedUpdate()
{
if (!isActive)
{
return;
}
CheckCollider();
}
public override void Recycle()
{
if (IsRecycle)
{
return;
}
if (!ReferenceEquals(container, null))
{
container.Remove(this);
}
sphereCollider.enabled = false;
isActive = false;
BFMain.Instance.BattleMgr.PoolHelper.RecycleSkillSphereCollider(this);
}
}
}