Project_WL/Assets/Script/Ingame/NoSeeLongDMob.cs

34 lines
1.1 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NoSeeLongDMob : MyCoroutine
{
List<Renderer> list_Renderer = new List<Renderer>();
float dist = 90f;
private void Awake()
{
Act_Repeat_for1sec = () =>
{
for (int i = 0; i < list_Renderer.Count; i++)
{
if (list_Renderer[i].enabled && Vector3.Distance(MyValue.MyPC.Get_position(), list_Renderer[i].transform.position) > dist)
list_Renderer[i].enabled = false;
else if (!list_Renderer[i].enabled && Vector3.Distance(MyValue.MyPC.Get_position(), list_Renderer[i].transform.position) <= dist)
list_Renderer[i].enabled = true;
}
};
}
public void Set()
{
var mobs = GetComponentsInChildren<Actor>(true);
for (int i = 0; i < mobs.Length; i++)
{
mobs[i].gameObject.SetActive(true);
if (mobs[i].transform.localScale.x <= 2f)
list_Renderer.AddRange(mobs[i].GetComponentsInChildren<Renderer>());
}
}
}