Table of Contents

Class EventDispatcher

Namespace
Uncreated.Warfare.Events
Assembly
Uncreated.Warfare.dll
public class EventDispatcher : IHostedService, IDisposable
Inheritance
EventDispatcher
Implements
Inherited Members

Constructors

EventDispatcher(ILoggerFactory, ProjectileSolver, IPlayerService, EventSynchronizer, WarfareModule)

public EventDispatcher(ILoggerFactory loggerFactory, ProjectileSolver projectileSolver, IPlayerService playerService, EventSynchronizer eventSynchronizer, WarfareModule module)

Parameters

loggerFactory ILoggerFactory
projectileSolver ProjectileSolver
playerService IPlayerService
eventSynchronizer EventSynchronizer
module WarfareModule

Methods

DispatchEventAsync<TEventArgs>(TEventArgs, CancellationToken, bool)

Invoke an event with the given arguments.

public UniTask<bool> DispatchEventAsync<TEventArgs>(TEventArgs eventArgs, CancellationToken token = default, bool allowAsync = true) where TEventArgs : class

Parameters

eventArgs TEventArgs
token CancellationToken
allowAsync bool

Returns

UniTask<bool>

If the action should continue if eventArgs is ICancellable, otherwise true.

Type Parameters

TEventArgs

GetLogger(Type, string)

Create a logger for a handler of a specific EventInfo from a declaring type and name.

public ILogger GetLogger(Type declaringType, string eventName)

Parameters

declaringType Type
eventName string

Returns

ILogger

WaitForEvents()

public UniTask WaitForEvents()

Returns

UniTask