1
0
mirror of https://github.com/RaidMax/IW4M-Admin.git synced 2025-06-10 15:20:48 -05:00

Add GameLogEvent as catch all for unhandled log lines

This commit is contained in:
RaidMax
2024-06-22 12:18:33 -05:00
parent 4b6f3e8851
commit dffcae8344
3 changed files with 16 additions and 2 deletions

View File

@ -86,6 +86,11 @@ public interface IGameEventSubscriptions
/// </summary>
static event Func<GameScriptEvent, CancellationToken, Task> ScriptEventTriggered;
/// <summary>
/// Raised when game log prints a line that is not handled by any other cases
/// </summary>
static event Func<GameLogEvent, CancellationToken, Task> GameLogEventTriggered;
static Task InvokeEventAsync(CoreEvent coreEvent, CancellationToken token)
{
return coreEvent switch
@ -100,6 +105,7 @@ public interface IGameEventSubscriptions
ClientCommandEvent clientCommandEvent => ClientEnteredCommand?.InvokeAsync(clientCommandEvent, token) ?? Task.CompletedTask,
ClientMessageEvent clientMessageEvent => ClientMessaged?.InvokeAsync(clientMessageEvent, token) ?? Task.CompletedTask,
GameScriptEvent gameScriptEvent => ScriptEventTriggered?.InvokeAsync(gameScriptEvent, token) ?? Task.CompletedTask,
GameLogEvent gameLogEvent => GameLogEventTriggered?.InvokeAsync(gameLogEvent, token) ?? Task.CompletedTask,
_ => Task.CompletedTask
};
}
@ -116,5 +122,6 @@ public interface IGameEventSubscriptions
ClientMessaged = null;
ClientEnteredCommand = null;
ScriptEventTriggered = null;
GameLogEventTriggered = null;
}
}