new-horizons/NewHorizons/Components/PreserveActiveCenterOfTheUniverse.cs

27 lines
799 B
C#

using NewHorizons.Utility.OWML;
using UnityEngine;
namespace NewHorizons.Components
{
// Prevents the center of the universe being deactivated
public class PreserveActiveCenterOfTheUniverse : MonoBehaviour
{
private GameObject _centerOfTheUniverse;
public static void Apply(GameObject center)
{
var go = new GameObject(nameof(PreserveActiveCenterOfTheUniverse));
go.AddComponent<PreserveActiveCenterOfTheUniverse>()._centerOfTheUniverse = center;
}
public void Update()
{
if (!_centerOfTheUniverse.activeInHierarchy)
{
NHLogger.LogWarning("Center of the universe cannot be inactive.");
_centerOfTheUniverse.SetActive(true);
}
}
}
}