DENZEL519
Работаю с AI !
- Сообщения
- 417
- Реакции
- 198
@oleg_nelasy, Проверь так
C-подобный:
#pragma semicolon 1
#pragma newdecls required
#include <sdkhooks>
public void OnPluginStart()
{
for(int i = 1; i <= MaxClients; i++)
{
if(IsClientInGame(i))
{
OnClientPutInServer(i);
}
}
}
public void OnClientPutInServer(int client)
{
if(!IsFakeClient(client) && !IsClientSourceTV(client) && !IsClientReplay(client))
{
SDKHook(client, SDKHook_OnTakeDamage, TakeDamageHook);
}
}
public Action TakeDamageHook(int client, int &attacker, int &inflictor, float &damage, int &damagetype)
{
if(attacker != inflictor ||
client < 1 || client > MaxClients ||
attacker < 1 || attacker > MaxClients ||
GetClientTeam(client) != GetClientTeam(attacker))
{
return Plugin_Continue;
}
char weapon[32];
GetClientWeapon(attacker, weapon, sizeof(weapon));
if(StrContains(weapon, "knife", false) == -1 && StrContains(weapon, "bayonet", false) == -1)
{
return Plugin_Continue;
}
damage = 0.0;
return Plugin_Handled;
}