oleg_nelasy
Участник
- Сообщения
- 664
- Реакции
- 46
C#:
private HookResult OnEventItemPurchasePost(EventItemPurchase @event, GameEventInfo info)
{
int awpCountTeamT = 0;
int awpCountTeamСT = 0;
Server.PrintToChatAll($"Ирок {@event.Userid.PlayerName} купил оружие {@event.Weapon} в команде {@event.Userid.TeamNum}");
foreach (var player in Utilities.GetPlayers()
.Where(p => p.Connected == PlayerConnectedState.PlayerConnected)
.Where(p => p.PlayerPawn.Value?.TeamNum == (byte)CsTeam.Terrorist || p.PlayerPawn.Value?.TeamNum == (byte)CsTeam.CounterTerrorist))
{
var playerPawn = player.PlayerPawn.Value!;
var playerTeam = player.PlayerPawn.Value!.TeamNum;
foreach (var weapon in playerPawn.WeaponServices!.MyWeapons)
{
if (weapon is { IsValid: true, Value.IsValid: true })
{
if (weapon.Value.AttributeManager.Item.ItemDefinitionIndex == (int)ItemDefinition.AWP)
{
// у игрока есть авп
if (playerTeam == 2) awpCountTeamT++;
else if (playerTeam == 3) awpCountTeamСT++;
}
}
}
}
@event.Userid.PrintToChat($"awpCountTeamT = {awpCountTeamT} awpCountTeamСT = {awpCountTeamСT}");
if ((@event.Weapon == "weapon_awp" && awpCountTeamT >= g_limitAWP && @event.Userid.TeamNum == 2) || (@event.Weapon == "weapon_awp" && awpCountTeamСT >= g_limitAWP && @event.Userid.TeamNum == 3))
{
statePurchasePlayers[@event.Userid.Index]!.IsBay = true;
}
return HookResult.Continue;
}
Проблема явно в
C#:
foreach (var weapon in playerPawn.WeaponServices!.MyWeapons)
{
if (weapon is { IsValid: true, Value.IsValid: true })
{
if (weapon.Value.AttributeManager.Item.ItemDefinitionIndex == (int)ItemDefinition.AWP)
{
// у игрока есть авп
if (playerTeam == 2) awpCountTeamT++;
else if (playerTeam == 3) awpCountTeamСT++;
}
}
}