quantum-space-buddies/QSB/MeteorSync/MeteorManager.cs

28 lines
840 B
C#
Raw Normal View History

2021-11-25 15:32:34 +00:00
using QSB.MeteorSync.WorldObjects;
2021-11-11 02:40:02 +00:00
using QSB.WorldSync;
2021-11-25 15:32:34 +00:00
using System.Linq;
2021-11-11 02:40:02 +00:00
namespace QSB.MeteorSync
{
public class MeteorManager : WorldObjectManager
{
public static bool Ready => AllReady && _ready;
private static bool _ready;
2021-11-14 11:29:58 +00:00
public static WhiteHoleVolume WhiteHoleVolume;
2021-11-11 02:40:02 +00:00
protected override void RebuildWorldObjects(OWScene scene)
{
_ready = false;
2021-11-17 10:36:28 +00:00
// wait for all late initializers (which includes meteor launchers) to finish
QSBCore.UnityEvents.RunWhen(() => LateInitializerManager.s_lateInitializers.Count == 0, () =>
2021-11-11 02:40:02 +00:00
{
2021-11-15 10:39:06 +00:00
WhiteHoleVolume = QSBWorldSync.GetUnityObjects<WhiteHoleVolume>().First();
QSBWorldSync.Init<QSBMeteorLauncher, MeteorLauncher>();
2021-11-11 02:40:02 +00:00
QSBWorldSync.Init<QSBMeteor, MeteorController>();
QSBWorldSync.Init<QSBFragment, FragmentIntegrity>();
_ready = true;
2021-11-17 10:36:28 +00:00
});
2021-11-11 02:40:02 +00:00
}
}
}