public virtual void SetModdedSystem(ModSystem moddedSystem) { if (!ModdedSystemType.IsAssignableFrom(moddedSystem.GetType())) { throw new InvalidOperationException($"Cannot accept {moddedSystem.Name} for {Name} as it is not of type {ModdedSystemType.Name}."); } ModSystemBase = moddedSystem; ModdedSystemType = moddedSystem.GetType(); }
public void Pair(ModSystem system) { SetModdedSystem(system); system.SetCoreSystem(this); }