add public CS2EventHandler? GetEventHandlerForEvent(CS2Event cs2Event)
This commit is contained in:
parent
996255b490
commit
316cc815b5
121
CS2GSI/CS2GSI.cs
121
CS2GSI/CS2GSI.cs
@ -56,93 +56,42 @@ public class CS2GSI
|
|||||||
|
|
||||||
private void InvokeEvent(ValueTuple<CS2Event, CS2EventArgs> cs2Event)
|
private void InvokeEvent(ValueTuple<CS2Event, CS2EventArgs> cs2Event)
|
||||||
{
|
{
|
||||||
switch (cs2Event.Item1)
|
GetEventHandlerForEvent(cs2Event.Item1)?.Invoke(cs2Event.Item2);
|
||||||
|
}
|
||||||
|
|
||||||
|
public CS2EventHandler? GetEventHandlerForEvent(CS2Event cs2Event)
|
||||||
|
{
|
||||||
|
return cs2Event switch
|
||||||
{
|
{
|
||||||
case CS2Event.OnKill:
|
CS2Event.OnKill => this.OnKill,
|
||||||
OnKill?.Invoke(cs2Event.Item2);
|
CS2Event.OnHeadshot => this.OnHeadshot,
|
||||||
break;
|
CS2Event.OnDeath => this.OnDeath,
|
||||||
case CS2Event.OnHeadshot:
|
CS2Event.OnFlashed => this.OnFlashed,
|
||||||
OnHeadshot?.Invoke(cs2Event.Item2);
|
CS2Event.OnBurning => this.OnBurning,
|
||||||
break;
|
CS2Event.OnSmoked => this.OnSmoked,
|
||||||
case CS2Event.OnDeath:
|
CS2Event.OnRoundStart => this.OnRoundStart,
|
||||||
OnDeath?.Invoke(cs2Event.Item2);
|
CS2Event.OnRoundOver => this.OnRoundOver,
|
||||||
break;
|
CS2Event.OnRoundWin => this.OnRoundWin,
|
||||||
case CS2Event.OnFlashed:
|
CS2Event.OnRoundLoss => this.OnRoundLoss,
|
||||||
OnFlashed?.Invoke(cs2Event.Item2);
|
CS2Event.OnDamageTaken => this.OnDamageTaken,
|
||||||
break;
|
CS2Event.OnMatchStart => this.OnMatchStart,
|
||||||
case CS2Event.OnBurning:
|
CS2Event.OnMatchOver => this.OnMatchOver,
|
||||||
OnBurning?.Invoke(cs2Event.Item2);
|
CS2Event.OnMoneyChange => this.OnMoneyChange,
|
||||||
break;
|
CS2Event.OnHealthChange => this.OnHealthChange,
|
||||||
case CS2Event.OnSmoked:
|
CS2Event.OnArmorChange => this.OnArmorChange,
|
||||||
OnSmoked?.Invoke(cs2Event.Item2);
|
CS2Event.OnHelmetChange => this.OnHelmetChange,
|
||||||
break;
|
CS2Event.OnEquipmentValueChange => this.OnEquipmentValueChange,
|
||||||
case CS2Event.OnRoundStart:
|
CS2Event.OnTeamChange => this.OnTeamChange,
|
||||||
OnRoundStart?.Invoke(cs2Event.Item2);
|
CS2Event.OnPlayerChange => this.OnPlayerChange,
|
||||||
break;
|
CS2Event.OnHalfTime => this.OnHalfTime,
|
||||||
case CS2Event.OnRoundOver:
|
CS2Event.OnFreezeTime => this.OnFreezeTime,
|
||||||
OnRoundOver?.Invoke(cs2Event.Item2);
|
CS2Event.OnBombPlanted => this.OnBombPlanted,
|
||||||
break;
|
CS2Event.OnBombDefused => this.OnBombDefused,
|
||||||
case CS2Event.OnRoundWin:
|
CS2Event.OnBombExploded => this.OnBombExploded,
|
||||||
OnRoundWin?.Invoke(cs2Event.Item2);
|
CS2Event.AnyEvent => this.AnyEvent,
|
||||||
break;
|
CS2Event.AnyMessage => this.AnyMessage,
|
||||||
case CS2Event.OnRoundLoss:
|
_ => throw new ArgumentException("Unknown Event", nameof(cs2Event))
|
||||||
OnRoundLoss?.Invoke(cs2Event.Item2);
|
};
|
||||||
break;
|
|
||||||
case CS2Event.OnDamageTaken:
|
|
||||||
OnDamageTaken?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnMatchStart:
|
|
||||||
OnMatchStart?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnMatchOver:
|
|
||||||
OnMatchOver?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnMoneyChange:
|
|
||||||
OnMoneyChange?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnHealthChange:
|
|
||||||
OnHealthChange?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnArmorChange:
|
|
||||||
OnArmorChange?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnHelmetChange:
|
|
||||||
OnHelmetChange?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnEquipmentValueChange:
|
|
||||||
OnEquipmentValueChange?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnTeamChange:
|
|
||||||
OnTeamChange?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnPlayerChange:
|
|
||||||
OnPlayerChange?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnFreezeTime:
|
|
||||||
OnFreezeTime?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnHalfTime:
|
|
||||||
OnHalfTime?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnBombDefused:
|
|
||||||
OnBombDefused?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnBombExploded:
|
|
||||||
OnBombExploded?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.OnBombPlanted:
|
|
||||||
OnBombPlanted?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.AnyEvent:
|
|
||||||
AnyEvent?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
case CS2Event.AnyMessage:
|
|
||||||
AnyMessage?.Invoke(cs2Event.Item2);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
this._logger?.Log(LogLevel.Error, $"Unknown Event {cs2Event}");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public enum CS2Event {
|
public enum CS2Event {
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<Version>1.0.5</Version>
|
<Version>1.0.6</Version>
|
||||||
<Title>CS2GSI</Title>
|
<Title>CS2GSI</Title>
|
||||||
<Authors>Glax</Authors>
|
<Authors>Glax</Authors>
|
||||||
<RepositoryUrl>https://github.com/C9Glax/CS2GSI</RepositoryUrl>
|
<RepositoryUrl>https://github.com/C9Glax/CS2GSI</RepositoryUrl>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user