Files
UltimateFishing/Assets/Scripts/Assembly-CSharp/GazeTargetSpawner.cs
2026-02-21 16:45:37 +08:00

52 lines
1.1 KiB
C#

using UnityEngine;
public class GazeTargetSpawner : MonoBehaviour
{
public GameObject GazeTargetPrefab;
public int NumberOfDummyTargets = 100;
public int RadiusMultiplier = 3;
[SerializeField]
private bool isVisible;
public bool IsVisible
{
get
{
return isVisible;
}
set
{
isVisible = value;
GazeTarget[] componentsInChildren = base.gameObject.GetComponentsInChildren<GazeTarget>();
for (int i = 0; i < componentsInChildren.Length; i++)
{
MeshRenderer component = componentsInChildren[i].GetComponent<MeshRenderer>();
if (component != null)
{
component.enabled = isVisible;
}
}
}
}
private void Start()
{
for (int i = 0; i < NumberOfDummyTargets; i++)
{
GameObject gameObject = Object.Instantiate(GazeTargetPrefab, base.transform);
gameObject.name = gameObject.name + "_" + i;
gameObject.transform.localPosition = Random.insideUnitSphere * RadiusMultiplier;
gameObject.transform.rotation = Quaternion.identity;
gameObject.GetComponent<MeshRenderer>().enabled = IsVisible;
}
}
private void OnValidate()
{
IsVisible = isVisible;
}
}