using System.Collections.Generic;
using UnityEngine;
namespace Funique
{
///
/// Force mesh renderer enable or disable
/// ------------------------------------------------
/// 強制關閉或是開啟渲染
///
[AddComponentMenu("Funique/Core/Force Active")]
public class ForceActive : MonoBehaviour
{
// 欄位
#region Field
[SerializeField] List act = new List();
[SerializeField] List deact = new List();
#endregion
// Unity 事件
#region Unity Event
void Update()
{
foreach (var i in act) i.enabled = true;
foreach (var i in deact) i.enabled = false;
}
#endregion
// 設置
#region Setter
///
/// Clean renderer active list
/// ------------------------------------------------
/// 清空強制開啟列表
///
public void CleanActive()
{
act.Clear();
}
///
/// Clean renderer disactive list
/// ------------------------------------------------
/// 清空強制關閉列表
///
public void CleanDisactive()
{
deact.Clear();
}
///
/// Adding element to renderer active list
/// ------------------------------------------------
/// 加入強制開啟列表
///
/// Target
public void AddActive(MeshRenderer mr)
{
act.Add(mr);
}
///
/// Adding element to renderer disactive list
/// ------------------------------------------------
/// 加入強制關閉列表
///
/// Target
public void AddDisactive(MeshRenderer mr)
{
deact.Add(mr);
}
///
///
///
/// Target
public void AddActives(MeshRenderer[] mrs)
{
act.AddRange(mrs);
}
///
///
///
/// Target
public void AddDisactives(MeshRenderer[] mrs)
{
deact.AddRange(mrs);
}
#endregion
}
}