Class ConfiguredResoniteAsyncEventHandlerMonkey<TMonkey, TConfigSection, TEvent1, TEvent2, TEvent3, TEvent4>
- Namespace
- MonkeyLoader.Resonite
- Assembly
- MonkeyLoader.Resonite.Integration.dll
Represents the base class for patchers that run after Resonite's assemblies have been loaded and that hook into the game's lifecycle.
Specifically, to act as an async event handler for the TEvent generic parameter(s).
public abstract class ConfiguredResoniteAsyncEventHandlerMonkey<TMonkey, TConfigSection, TEvent1, TEvent2, TEvent3, TEvent4> : ResoniteAsyncEventHandlerMonkey<TMonkey, TEvent1, TEvent2, TEvent3, TEvent4>, IResoniteMonkey, IAsyncEventHandler<TEvent1>, IAsyncEventHandler<TEvent2>, IAsyncEventHandler<TEvent3>, IAsyncEventHandler<TEvent4>, IPrioritizable, IConfiguredMonkey<TConfigSection>, IConfiguredMonkey, IMonkey, IRun, IShutdown, IComparable<IMonkey>, INestedIdentifiable<Mod>, INestedIdentifiable, IIdentifiable, IAuthorable, IDisplayable where TMonkey : ConfiguredResoniteAsyncEventHandlerMonkey<TMonkey, TConfigSection, TEvent1, TEvent2, TEvent3, TEvent4>, new() where TConfigSection : ConfigSection, new() where TEvent1 : AsyncEvent where TEvent2 : AsyncEvent where TEvent3 : AsyncEvent where TEvent4 : AsyncEvent
Type Parameters
TMonkeyThe type of the actual patcher.
TConfigSectionThe type of the config section to load.
TEvent1The first AsyncEvent type to handle.
TEvent2The second AsyncEvent type to handle.
TEvent3The third AsyncEvent type to handle.
TEvent4The fourth AsyncEvent type to handle.
- Inheritance
-
MonkeyBase<TMonkey>Monkey<TMonkey>ResoniteMonkey<TMonkey>ResoniteAsyncEventHandlerMonkey<TMonkey, TEvent1>ResoniteAsyncEventHandlerMonkey<TMonkey, TEvent1, TEvent2>ResoniteAsyncEventHandlerMonkey<TMonkey, TEvent1, TEvent2, TEvent3>ResoniteAsyncEventHandlerMonkey<TMonkey, TEvent1, TEvent2, TEvent3, TEvent4>ConfiguredResoniteAsyncEventHandlerMonkey<TMonkey, TConfigSection, TEvent1, TEvent2, TEvent3, TEvent4>
- Implements
-
IAsyncEventHandler<TEvent1>IAsyncEventHandler<TEvent2>IAsyncEventHandler<TEvent3>IAsyncEventHandler<TEvent4>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
ConfiguredResoniteAsyncEventHandlerMonkey()
Allows creating only a single TMonkey instance.
protected ConfiguredResoniteAsyncEventHandlerMonkey()
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.