1
0
mirror of https://github.com/RaidMax/IW4M-Admin.git synced 2025-06-10 23:31:13 -05:00

Add commenting for parsers

rename IW4*Parser to Base*Parser
This commit is contained in:
RaidMax
2019-02-02 19:40:37 -06:00
parent 5e7aefb35f
commit 0860ce6f62
16 changed files with 171 additions and 74 deletions

View File

@ -7,9 +7,9 @@ using System.Text.RegularExpressions;
namespace IW4MAdmin.Application.EventParsers
{
class IW4EventParser : IEventParser
class BaseEventParser : IEventParser
{
public IW4EventParser()
public BaseEventParser()
{
Configuration = new DynamicEventParserConfiguration()
{
@ -17,53 +17,53 @@ namespace IW4MAdmin.Application.EventParsers
};
Configuration.Say.Pattern = @"^(say|sayteam);(.{1,32});([0-9]+)(.*);(.*)$";
Configuration.Say.GroupMapping.Add(ParserRegex.GroupType.EventType, 1);
Configuration.Say.GroupMapping.Add(ParserRegex.GroupType.OriginNetworkId, 2);
Configuration.Say.GroupMapping.Add(ParserRegex.GroupType.OriginClientNumber, 3);
Configuration.Say.GroupMapping.Add(ParserRegex.GroupType.OriginName, 4);
Configuration.Say.GroupMapping.Add(ParserRegex.GroupType.Message, 5);
Configuration.Say.AddMapping(ParserRegex.GroupType.EventType, 1);
Configuration.Say.AddMapping(ParserRegex.GroupType.OriginNetworkId, 2);
Configuration.Say.AddMapping(ParserRegex.GroupType.OriginClientNumber, 3);
Configuration.Say.AddMapping(ParserRegex.GroupType.OriginName, 4);
Configuration.Say.AddMapping(ParserRegex.GroupType.Message, 5);
Configuration.Quit.Pattern = @"^(Q);(.{16,32}|bot[0-9]+);([0-9]+);(.*)$";
Configuration.Quit.GroupMapping.Add(ParserRegex.GroupType.EventType, 1);
Configuration.Quit.GroupMapping.Add(ParserRegex.GroupType.OriginNetworkId, 2);
Configuration.Quit.GroupMapping.Add(ParserRegex.GroupType.OriginClientNumber, 3);
Configuration.Quit.GroupMapping.Add(ParserRegex.GroupType.OriginName, 4);
Configuration.Quit.AddMapping(ParserRegex.GroupType.EventType, 1);
Configuration.Quit.AddMapping(ParserRegex.GroupType.OriginNetworkId, 2);
Configuration.Quit.AddMapping(ParserRegex.GroupType.OriginClientNumber, 3);
Configuration.Quit.AddMapping(ParserRegex.GroupType.OriginName, 4);
Configuration.Join.Pattern = @"^(J);(.{16,32}|bot[0-9]+);([0-9]+);(.*)$";
Configuration.Join.GroupMapping.Add(ParserRegex.GroupType.EventType, 1);
Configuration.Join.GroupMapping.Add(ParserRegex.GroupType.OriginNetworkId, 2);
Configuration.Join.GroupMapping.Add(ParserRegex.GroupType.OriginClientNumber, 3);
Configuration.Join.GroupMapping.Add(ParserRegex.GroupType.OriginName, 4);
Configuration.Join.AddMapping(ParserRegex.GroupType.EventType, 1);
Configuration.Join.AddMapping(ParserRegex.GroupType.OriginNetworkId, 2);
Configuration.Join.AddMapping(ParserRegex.GroupType.OriginClientNumber, 3);
Configuration.Join.AddMapping(ParserRegex.GroupType.OriginName, 4);
Configuration.Damage.Pattern = @"^(D);([A-Fa-f0-9_]{16,32}|bot[0-9]+);(-?[0-9]+);(axis|allies|world);(.{1,24});([A-Fa-f0-9_]{16,32}|bot[0-9]+)?;-?([0-9]+);(axis|allies|world);(.{1,24})?;((?:[0-9]+|[a-z]+|_)+);([0-9]+);((?:[A-Z]|_)+);((?:[a-z]|_)+)$";
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.EventType, 1);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.TargetNetworkId, 2);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.TargetClientNumber, 3);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.TargetTeam, 4);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.TargetName, 5);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.OriginNetworkId, 6);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.OriginClientNumber, 7);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.OriginTeam, 8);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.OriginName, 9);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.Weapon, 10);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.Damage, 11);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.MeansOfDeath, 12);
Configuration.Damage.GroupMapping.Add(ParserRegex.GroupType.HitLocation, 13);
Configuration.Damage.AddMapping(ParserRegex.GroupType.EventType, 1);
Configuration.Damage.AddMapping(ParserRegex.GroupType.TargetNetworkId, 2);
Configuration.Damage.AddMapping(ParserRegex.GroupType.TargetClientNumber, 3);
Configuration.Damage.AddMapping(ParserRegex.GroupType.TargetTeam, 4);
Configuration.Damage.AddMapping(ParserRegex.GroupType.TargetName, 5);
Configuration.Damage.AddMapping(ParserRegex.GroupType.OriginNetworkId, 6);
Configuration.Damage.AddMapping(ParserRegex.GroupType.OriginClientNumber, 7);
Configuration.Damage.AddMapping(ParserRegex.GroupType.OriginTeam, 8);
Configuration.Damage.AddMapping(ParserRegex.GroupType.OriginName, 9);
Configuration.Damage.AddMapping(ParserRegex.GroupType.Weapon, 10);
Configuration.Damage.AddMapping(ParserRegex.GroupType.Damage, 11);
Configuration.Damage.AddMapping(ParserRegex.GroupType.MeansOfDeath, 12);
Configuration.Damage.AddMapping(ParserRegex.GroupType.HitLocation, 13);
Configuration.Kill.Pattern = @"^(K);([A-Fa-f0-9_]{16,32}|bot[0-9]+);(-?[0-9]+);(axis|allies|world);(.{1,24});([A-Fa-f0-9_]{16,32}|bot[0-9]+)?;-?([0-9]+);(axis|allies|world);(.{1,24})?;((?:[0-9]+|[a-z]+|_)+);([0-9]+);((?:[A-Z]|_)+);((?:[a-z]|_)+)$";
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.EventType, 1);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.TargetNetworkId, 2);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.TargetClientNumber, 3);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.TargetTeam, 4);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.TargetName, 5);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.OriginNetworkId, 6);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.OriginClientNumber, 7);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.OriginTeam, 8);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.OriginName, 9);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.Weapon, 10);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.Damage, 11);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.MeansOfDeath, 12);
Configuration.Kill.GroupMapping.Add(ParserRegex.GroupType.HitLocation, 13);
Configuration.Kill.AddMapping(ParserRegex.GroupType.EventType, 1);
Configuration.Kill.AddMapping(ParserRegex.GroupType.TargetNetworkId, 2);
Configuration.Kill.AddMapping(ParserRegex.GroupType.TargetClientNumber, 3);
Configuration.Kill.AddMapping(ParserRegex.GroupType.TargetTeam, 4);
Configuration.Kill.AddMapping(ParserRegex.GroupType.TargetName, 5);
Configuration.Kill.AddMapping(ParserRegex.GroupType.OriginNetworkId, 6);
Configuration.Kill.AddMapping(ParserRegex.GroupType.OriginClientNumber, 7);
Configuration.Kill.AddMapping(ParserRegex.GroupType.OriginTeam, 8);
Configuration.Kill.AddMapping(ParserRegex.GroupType.OriginName, 9);
Configuration.Kill.AddMapping(ParserRegex.GroupType.Weapon, 10);
Configuration.Kill.AddMapping(ParserRegex.GroupType.Damage, 11);
Configuration.Kill.AddMapping(ParserRegex.GroupType.MeansOfDeath, 12);
Configuration.Kill.AddMapping(ParserRegex.GroupType.HitLocation, 13);
}
public IEventParserConfiguration Configuration { get; set; }

View File

@ -5,7 +5,11 @@ using static SharedLibraryCore.Server;
namespace IW4MAdmin.Application.EventParsers
{
sealed internal class DynamicEventParser : IW4EventParser
/// <summary>
/// empty generic implementation of the IEventParserConfiguration
/// allows script plugins to generate dynamic event parsers
/// </summary>
sealed internal class DynamicEventParser : BaseEventParser
{
}
}

View File

@ -2,7 +2,11 @@
namespace IW4MAdmin.Application.EventParsers
{
class DynamicEventParserConfiguration : IEventParserConfiguration
/// <summary>
/// generic implementation of the IEventParserConfiguration
/// allows script plugins to generate dynamic configurations
/// </summary>
sealed internal class DynamicEventParserConfiguration : IEventParserConfiguration
{
public string GameDirectory { get; set; }
public ParserRegex Say { get; set; } = new ParserRegex();

View File

@ -4,7 +4,7 @@ using System.Text;
namespace IW4MAdmin.Application.EventParsers
{
class IW3EventParser : IW4EventParser
class IW3EventParser : BaseEventParser
{
public IW3EventParser() : base()
{

View File

@ -4,7 +4,7 @@ using System.Text;
namespace IW4MAdmin.Application.EventParsers
{
class T5MEventParser : IW4EventParser
class T5MEventParser : BaseEventParser
{
public T5MEventParser() : base()
{

View File

@ -2,7 +2,7 @@
namespace IW4MAdmin.Application.EventParsers
{
class T6MEventParser : IW4EventParser
class T6MEventParser : BaseEventParser
{
public T6MEventParser() : base()
{