using SharedLibraryCore; using SharedLibraryCore.Database.Models; using SharedLibraryCore.Interfaces; using System.Collections.Generic; using SharedLibraryCore.Events.Game; using EventGeneratorCallback = System.ValueTuple<string, string, System.Func<string, SharedLibraryCore.Interfaces.IEventParserConfiguration, SharedLibraryCore.GameEvent, SharedLibraryCore.GameEvent>>; namespace IW4MAdmin.Plugins.LiveRadar.Events; public class Script : IRegisterEvent { private const string EventLiveRadar = "LiveRadar"; private EventGeneratorCallback LiveRadar() { return (EventLiveRadar, EventLiveRadar, (eventLine, _, _) => { var radarEvent = new LiveRadarEvent { Type = GameEvent.EventType.Other, Subtype = EventLiveRadar, Origin = new EFClient { NetworkId = 0 }, ScriptData = eventLine }; return radarEvent; } ); } public IEnumerable<EventGeneratorCallback> Events => new[] { LiveRadar() }; } public class LiveRadarEvent : GameScriptEvent { }