Class ConfiguredResoniteAsyncEventSourceMonkey<TMonkey, TConfigSection, TEvent1, TEvent2, TEvent3, TEvent4, TEvent5, TEvent6>
- Namespace
- MonkeyLoader.Resonite
- Assembly
- MonkeyLoader.Resonite.Integration.dll
Represents the base class for patchers that run after ConfiguredResonite's assemblies have been loaded and that hook into the game's lifecycle,
while using a .TConfigSection ConfigSection
Specifically, to act as an async event source for the TEvent generic parameter(s).
public abstract class ConfiguredResoniteAsyncEventSourceMonkey<TMonkey, TConfigSection, TEvent1, TEvent2, TEvent3, TEvent4, TEvent5, TEvent6> : ResoniteAsyncEventSourceMonkey<TMonkey, TEvent1, TEvent2, TEvent3, TEvent4, TEvent5>, IResoniteMonkey, IAsyncEventSource<TEvent1>, IAsyncEventSource<TEvent2>, IAsyncEventSource<TEvent3>, IAsyncEventSource<TEvent4>, IAsyncEventSource<TEvent5>, IConfiguredMonkey<TConfigSection>, IConfiguredMonkey, IMonkey, IRun, IShutdown, IComparable<IMonkey>, INestedIdentifiable<Mod>, INestedIdentifiable, IIdentifiable, IAuthorable, IDisplayable where TMonkey : ConfiguredResoniteAsyncEventSourceMonkey<TMonkey, TConfigSection, TEvent1, TEvent2, TEvent3, TEvent4, TEvent5, TEvent6>, new() where TConfigSection : ConfigSection, new() where TEvent1 : AsyncEvent where TEvent2 : AsyncEvent where TEvent3 : AsyncEvent where TEvent4 : AsyncEvent where TEvent5 : AsyncEvent where TEvent6 : AsyncEvent
Type Parameters
TMonkeyThe type of the actual patcher.
TConfigSectionThe type of the config section to load.
TEvent1The first AsyncEvent type to dispatch.
TEvent2The second AsyncEvent type to dispatch.
TEvent3The third AsyncEvent type to dispatch.
TEvent4The fourth AsyncEvent type to dispatch.
TEvent5The fifth AsyncEvent type to dispatch.
TEvent6The sixth AsyncEvent type to dispatch.
- Inheritance
-
MonkeyBase<TMonkey>Monkey<TMonkey>ResoniteMonkey<TMonkey>ResoniteAsyncEventSourceMonkey<TMonkey, TEvent1>ResoniteAsyncEventSourceMonkey<TMonkey, TEvent1, TEvent2>ResoniteAsyncEventSourceMonkey<TMonkey, TEvent1, TEvent2, TEvent3>ResoniteAsyncEventSourceMonkey<TMonkey, TEvent1, TEvent2, TEvent3, TEvent4>ResoniteAsyncEventSourceMonkey<TMonkey, TEvent1, TEvent2, TEvent3, TEvent4, TEvent5>ConfiguredResoniteAsyncEventSourceMonkey<TMonkey, TConfigSection, TEvent1, TEvent2, TEvent3, TEvent4, TEvent5, TEvent6>
- Implements
-
IAsyncEventSource<TEvent1>IAsyncEventSource<TEvent2>IAsyncEventSource<TEvent3>IAsyncEventSource<TEvent4>IAsyncEventSource<TEvent5>IConfiguredMonkey<TConfigSection>
- Inherited Members
- Extension Methods
Remarks
Game assemblies and their types can be directly referenced from these.
Contains useful overridable methods that are hooked to different points in the game's lifecycle.
Constructors
ConfiguredResoniteAsyncEventSourceMonkey()
Allows creating only a single TMonkey instance.
protected ConfiguredResoniteAsyncEventSourceMonkey()
Properties
ConfigSection
Gets the loaded config section for this patcher after it has been run.
public static TConfigSection ConfigSection { get; }
Property Value
- TConfigSection
Methods
OnLoaded()
Called right after the game tooling packs and all the game's assemblies have been loaded.
Use this to apply any patching and return true if it was successful.
protected override bool OnLoaded()
Returns
- bool
trueif it ran successfully; otherwise,false.
Remarks
Override this method if you need to patch something involved in the initialization of the game.
For ResoniteMonkeys, the default behavior ofOnLoaded()
is moved to OnEngineReady().
Otherwise your patches will be applied twice, if you're using
[HarmonyPatchCategory(nameof(MyPatcher))] attributes.
By default: Loads this patcher's TConfigSection
ConfigSection and returns true.