r2mods/ilspy_dump/ror2_csproj/RoR2/EnableWithPhase.cs

43 lines
843 B
C#

using System;
using UnityEngine;
namespace RoR2;
public class EnableWithPhase : MonoBehaviour
{
[Serializable]
public struct PhaseInfo
{
public int minimumPhaseThreshold;
public int maximumPhaseThreshold;
public GameObject[] gameObjectsToEnable;
}
public PhaseInfo[] phaseInfos;
private void FixedUpdate()
{
if (!PhaseCounter.instance)
{
return;
}
int phase = PhaseCounter.instance.phase;
for (int i = 0; i < phaseInfos.Length; i++)
{
bool active = true;
PhaseInfo phaseInfo = phaseInfos[i];
if (phaseInfo.minimumPhaseThreshold > phase || phaseInfo.maximumPhaseThreshold < phase)
{
active = false;
}
GameObject[] gameObjectsToEnable = phaseInfo.gameObjectsToEnable;
for (int j = 0; j < gameObjectsToEnable.Length; j++)
{
gameObjectsToEnable[j].SetActive(active);
}
}
}
}