такой вопрос: как изменить дамаг наносимый одним игроком другому?
Вот что я попытался сделать через sdkhooks:
получается так что игрок с повышенным дамагом не может убить другого, тому просто выставляет 0 хп.
а если игрок у которого нет этого повышеного дамага когонить коцает, сервер падает:DDD
Вот что я попытался сделать через sdkhooks:
PHP:
#pragma semicolon 1
#include <sdkhooks>
public OnClientPostAdminCheck(client)
{
SDKHook(client, SDKHook_OnTakeDamage, OnTakeDamage);
}
public Action:OnTakeDamage(victim, &attacker, &inflictor, &Float:damage, &damagetype)
{
if (AuraAuth[attacker])
{
if (auradamage[attacker] != 0)
{
new victimhealth = GetClientHealth(victim);
new newdamage;
new String:s_damage[256];
FloatToString(damage, s_damage, 256);
new i_damage = StringToInt(s_damage);
if(auradamagemode[attacker] == 0)
{
newdamage = i_damage + auradamage[attacker];
}
else
{
newdamage = i_damage + RoundToNearest(i_damage * 0.01 * auradamage[attacker]);
}
victimhealth -= newdamage;
if(victimhealth < 1)
{
victimhealth = 0;
}
SetEntityHealth(victim, victimhealth);
return Plugin_Handled;
}
return Plugin_Continue;
}
else
{
return Plugin_Continue;
}
}
получается так что игрок с повышенным дамагом не может убить другого, тому просто выставляет 0 хп.
а если игрок у которого нет этого повышеного дамага когонить коцает, сервер падает:DDD