34 lines
1.1 KiB
C#
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>());
|
|
}
|
|
}
|
|
} |