CSSPanel Support

This commit is contained in:
Sachin 2024-10-28 17:50:22 +05:30
parent d30ac80a36
commit f01beebea9
21 changed files with 762 additions and 214 deletions

View file

@ -273,7 +273,8 @@ public partial class CS2_SimpleAdmin
var adminInfo = caller != null && caller.UserId.HasValue ? PlayersInfo[caller.UserId.Value] : null;
// Set player's voice flags to muted
player.VoiceFlags = VoiceFlags.Muted;
if (!player.VoiceFlags.HasFlag(VoiceFlags.Muted))
player.VoiceFlags |= VoiceFlags.Muted;
// Asynchronously handle mute logic
Task.Run(async () =>
@ -402,7 +403,8 @@ public partial class CS2_SimpleAdmin
if (player != null && player.IsValid)
{
PlayerPenaltyManager.RemovePenaltiesByType(player.Slot, PenaltyType.Mute);
player.VoiceFlags = VoiceFlags.Normal;
if (player.VoiceFlags.HasFlag(VoiceFlags.Muted))
player.VoiceFlags &= ~VoiceFlags.Muted;
Task.Run(async () =>
{
@ -421,7 +423,8 @@ public partial class CS2_SimpleAdmin
if (namePlayer != null && namePlayer.IsValid)
{
PlayerPenaltyManager.RemovePenaltiesByType(namePlayer.Slot, PenaltyType.Mute);
namePlayer.VoiceFlags = VoiceFlags.Normal;
if (namePlayer.VoiceFlags.HasFlag(VoiceFlags.Muted))
namePlayer.VoiceFlags &= ~VoiceFlags.Muted;
if (namePlayer.UserId.HasValue && PlayersInfo[namePlayer.UserId.Value].TotalMutes > 0)
PlayersInfo[namePlayer.UserId.Value].TotalMutes--;
@ -491,6 +494,10 @@ public partial class CS2_SimpleAdmin
var playerInfo = PlayersInfo[player.UserId.Value];
var adminInfo = caller != null && caller.UserId.HasValue ? PlayersInfo[caller.UserId.Value] : null;
// Set player's voice flags to muted
if (!player.VoiceFlags.HasFlag(VoiceFlags.Muted))
player.VoiceFlags |= VoiceFlags.Muted;
// Asynchronously handle silence logic
Task.Run(async () =>
{
@ -620,7 +627,8 @@ public partial class CS2_SimpleAdmin
PlayerPenaltyManager.RemovePenaltiesByType(player.Slot, PenaltyType.Silence);
// Reset voice flags to normal
player.VoiceFlags = VoiceFlags.Normal;
if (player.VoiceFlags.HasFlag(VoiceFlags.Muted))
player.VoiceFlags &= ~VoiceFlags.Muted;
Task.Run(async () =>
{
@ -641,7 +649,8 @@ public partial class CS2_SimpleAdmin
PlayerPenaltyManager.RemovePenaltiesByType(namePlayer.Slot, PenaltyType.Silence);
// Reset voice flags to normal
namePlayer.VoiceFlags = VoiceFlags.Normal;
if (namePlayer.VoiceFlags.HasFlag(VoiceFlags.Muted))
namePlayer.VoiceFlags &= ~VoiceFlags.Muted;
if (namePlayer.UserId.HasValue && PlayersInfo[namePlayer.UserId.Value].TotalSilences > 0)
PlayersInfo[namePlayer.UserId.Value].TotalSilences--;