Compare commits
3 Commits
1d6699ed8a
...
6ce91bbae7
Author | SHA1 | Date | |
---|---|---|---|
6ce91bbae7 | |||
81fbc36b77 | |||
b17b2a8067 |
@ -32,15 +32,18 @@ internal static class CS2EventGenerator
|
|||||||
|
|
||||||
if(newGameState.Round?.Phase == Round.RoundPhase.Over && lastGameState.Round?.Phase == Round.RoundPhase.Live)
|
if(newGameState.Round?.Phase == Round.RoundPhase.Over && lastGameState.Round?.Phase == Round.RoundPhase.Live)
|
||||||
events.Add(new ValueTuple<CS2Event, CS2EventArgs>(CS2Event.OnRoundOver, new CS2EventArgs()));
|
events.Add(new ValueTuple<CS2Event, CS2EventArgs>(CS2Event.OnRoundOver, new CS2EventArgs()));
|
||||||
|
|
||||||
|
if (newGameState.Map?.Round is not null && newGameState.Map?.Round != previousPlayerState.Map?.Round)
|
||||||
|
{
|
||||||
|
if(newGameState.Round?.WinnerTeam is not null && newGameState.Round?.WinnerTeam == previousPlayerState.Player?.Team)
|
||||||
|
events.Add(new ValueTuple<CS2Event, CS2EventArgs>(CS2Event.OnRoundWin, new CS2EventArgs()));
|
||||||
|
|
||||||
if(newGameState.Round?.WinnerTeam is not null && newGameState.Round?.WinnerTeam == previousPlayerState.Player?.Team)
|
if(newGameState.Round?.WinnerTeam is not null && newGameState.Round?.WinnerTeam != previousPlayerState.Player?.Team)
|
||||||
events.Add(new ValueTuple<CS2Event, CS2EventArgs>(CS2Event.OnRoundWin, new CS2EventArgs()));
|
events.Add(new ValueTuple<CS2Event, CS2EventArgs>(CS2Event.OnRoundLoss, new CS2EventArgs()));
|
||||||
|
}
|
||||||
if(newGameState.Round?.WinnerTeam is not null && newGameState.Round?.WinnerTeam != previousPlayerState.Player?.Team)
|
|
||||||
events.Add(new ValueTuple<CS2Event, CS2EventArgs>(CS2Event.OnRoundLoss, new CS2EventArgs()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(newGameState.Map?.Phase == Map.MapPhase.Live && lastGameState.Map?.Phase != Map.MapPhase.Live)
|
if(newGameState.Map?.Phase == Map.MapPhase.Live && lastGameState.Map?.Phase == Map.MapPhase.Warmup)
|
||||||
events.Add(new ValueTuple<CS2Event, CS2EventArgs>(CS2Event.OnMatchStart, new CS2EventArgs()));
|
events.Add(new ValueTuple<CS2Event, CS2EventArgs>(CS2Event.OnMatchStart, new CS2EventArgs()));
|
||||||
|
|
||||||
if(newGameState.Map?.Phase == Map.MapPhase.GameOver && lastGameState.Map?.Phase != Map.MapPhase.GameOver)
|
if(newGameState.Map?.Phase == Map.MapPhase.GameOver && lastGameState.Map?.Phase != Map.MapPhase.GameOver)
|
||||||
|
@ -19,20 +19,20 @@ internal class GSIServer
|
|||||||
{
|
{
|
||||||
this.logger = logger;
|
this.logger = logger;
|
||||||
string prefix = $"http://127.0.0.1:{port}/";
|
string prefix = $"http://127.0.0.1:{port}/";
|
||||||
HttpListener = new HttpListener();
|
this.HttpListener = new HttpListener();
|
||||||
HttpListener.Prefixes.Add(prefix);
|
this.HttpListener.Prefixes.Add(prefix);
|
||||||
HttpListener.Start();
|
this.HttpListener.Start();
|
||||||
this.logger?.Log(LogLevel.Information, $"Listening on {prefix}");
|
this.logger?.Log(LogLevel.Information, $"Listening on {prefix}");
|
||||||
|
|
||||||
Thread connectionListener = new (HandleConnection);
|
Thread connectionListener = new (HandleConnection);
|
||||||
connectionListener.Start();
|
connectionListener.Start();
|
||||||
|
|
||||||
IsRunning = true;
|
this.IsRunning = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private async void HandleConnection()
|
private async void HandleConnection()
|
||||||
{
|
{
|
||||||
while (_keepRunning)
|
while (this._keepRunning)
|
||||||
{
|
{
|
||||||
HttpListenerContext context = await HttpListener.GetContextAsync();
|
HttpListenerContext context = await HttpListener.GetContextAsync();
|
||||||
HttpListenerRequest request = context.Request;
|
HttpListenerRequest request = context.Request;
|
||||||
@ -47,15 +47,15 @@ internal class GSIServer
|
|||||||
this.logger?.Log(LogLevel.Debug, $"Message Content:\n{content}");
|
this.logger?.Log(LogLevel.Debug, $"Message Content:\n{content}");
|
||||||
OnMessage?.Invoke(content);
|
OnMessage?.Invoke(content);
|
||||||
}
|
}
|
||||||
HttpListener.Close();
|
this.HttpListener.Close();
|
||||||
IsRunning = false;
|
this.IsRunning = false;
|
||||||
this.logger?.Log(LogLevel.Information, "Stopped GSIServer.");
|
this.logger?.Log(LogLevel.Information, "Stopped GSIServer.");
|
||||||
}
|
}
|
||||||
|
|
||||||
internal void Dispose()
|
internal void Dispose()
|
||||||
{
|
{
|
||||||
this.logger?.Log(LogLevel.Information, "Stopping GSIServer.");
|
this.logger?.Log(LogLevel.Information, "Stopping GSIServer.");
|
||||||
_keepRunning = false;
|
this._keepRunning = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user