Compare commits

...

3 Commits

Author SHA1 Message Date
INeedGames
e6d159fc03 Update _customcallbacks.gsc 2023-10-11 23:40:40 -05:00
INeedGames
f3adb75d55 Fix possible infinite loop
Possibility of an exploiter killing an enemy and disconnecting within the `wait` window to trigger an infinite loop.
2023-10-11 23:40:40 -05:00
RaidMax
d7c24dc98f add clear all reports command 2023-09-14 21:40:35 -05:00
3 changed files with 37 additions and 2 deletions

View File

@ -0,0 +1,31 @@
using System.Threading.Tasks;
using Data.Models.Client;
using SharedLibraryCore;
using SharedLibraryCore.Configuration;
using SharedLibraryCore.Interfaces;
namespace IW4MAdmin.Application.Commands;
public class ClearAllReportsCommand : Command
{
public ClearAllReportsCommand(CommandConfiguration config, ITranslationLookup layout) : base(config, layout)
{
Name = "clearallreports";
Description = _translationLookup["COMMANDS_REPORTS_CLEAR_DESC"];
Alias = "car";
Permission = EFClient.Permission.Administrator;
RequiresTarget = false;
}
public override Task ExecuteAsync(GameEvent gameEvent)
{
foreach (var server in gameEvent.Owner.Manager.GetServers())
{
server.Reports.Clear();
}
gameEvent.Origin.Tell(_translationLookup["COMMANDS_REPORTS_CLEAR_SUCCESS"]);
return Task.CompletedTask;
}
}

View File

@ -137,6 +137,8 @@ waitForFrameThread()
waitForAdditionalAngles( logString, beforeFrameCount, afterFrameCount ) waitForAdditionalAngles( logString, beforeFrameCount, afterFrameCount )
{ {
self endon( "disconnect" );
currentIndex = self.currentAnglePosition; currentIndex = self.currentAnglePosition;
wait( 0.05 * afterFrameCount ); wait( 0.05 * afterFrameCount );
@ -246,4 +248,4 @@ Callback_PlayerDisconnect()
{ {
level notify( "disconnected", self ); level notify( "disconnected", self );
self maps\mp\gametypes\_playerlogic::Callback_PlayerDisconnect(); self maps\mp\gametypes\_playerlogic::Callback_PlayerDisconnect();
} }

View File

@ -143,6 +143,8 @@ waitForFrameThread()
waitForAdditionalAngles( logString, beforeFrameCount, afterFrameCount ) waitForAdditionalAngles( logString, beforeFrameCount, afterFrameCount )
{ {
self endon( "disconnect" );
currentIndex = self.currentAnglePosition; currentIndex = self.currentAnglePosition;
wait( 0.05 * afterFrameCount ); wait( 0.05 * afterFrameCount );
@ -260,4 +262,4 @@ Callback_PlayerDisconnect()
{ {
level notify( "disconnected", self ); level notify( "disconnected", self );
self [[maps\mp\gametypes\_globallogic_player::callback_playerdisconnect]](); self [[maps\mp\gametypes\_globallogic_player::callback_playerdisconnect]]();
} }