quantum-space-buddies/QSB/WorldSync/WorldObjectManager.cs
2022-01-28 20:50:34 -08:00

28 lines
607 B
C#

using Cysharp.Threading.Tasks;
using System.Threading;
using UnityEngine;
namespace QSB.WorldSync
{
public enum WorldObjectType
{
Both,
SolarSystem,
Eye
}
public abstract class WorldObjectManager : MonoBehaviour
{
/// <summary>
/// when the scene does not match the type, this manager will not build its world objects
/// </summary>
public abstract WorldObjectType WorldObjectType { get; }
public abstract UniTask BuildWorldObjects(OWScene scene, CancellationToken ct);
public virtual void UnbuildWorldObjects() { }
public override string ToString() => GetType().Name;
}
}