mirror of
https://github.com/alliedmodders/sourcemod.git
synced 2025-12-07 02:18:35 +00:00
Merge ef7c201cc8 into 1819f491b5
This commit is contained in:
commit
2864ff364a
@ -1560,12 +1560,25 @@ int PlayerManager::InternalFilterCommandTarget(CPlayer *pAdmin, CPlayer *pTarget
|
|||||||
|
|
||||||
if (pAdmin != NULL)
|
if (pAdmin != NULL)
|
||||||
{
|
{
|
||||||
if ((flags & COMMAND_FILTER_NO_IMMUNITY) != COMMAND_FILTER_NO_IMMUNITY
|
if ((flags & COMMAND_FILTER_NO_IMMUNITY) != COMMAND_FILTER_NO_IMMUNITY)
|
||||||
&& !adminsys->CanAdminTarget(pAdmin->GetAdminId(), pTarget->GetAdminId()))
|
{
|
||||||
|
AdminId tid = pTarget->GetAdminId();
|
||||||
|
/* If the target is pre-auth they're targetable; bypassing immunity rules... */
|
||||||
|
if (tid == INVALID_ADMIN_ID && !pTarget->IsAuthStringValidated())
|
||||||
|
{
|
||||||
|
tid = adminsys->FindAdminByIdentity("steam", pTarget->GetAuthString(false));
|
||||||
|
if (tid == INVALID_ADMIN_ID)
|
||||||
|
{
|
||||||
|
tid = adminsys->FindAdminByIdentity("ip", pTarget->GetIPAddress());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!adminsys->CanAdminTarget(pAdmin->GetAdminId(), tid))
|
||||||
{
|
{
|
||||||
return COMMAND_TARGET_IMMUNE;
|
return COMMAND_TARGET_IMMUNE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if ((flags & COMMAND_FILTER_ALIVE) == COMMAND_FILTER_ALIVE
|
if ((flags & COMMAND_FILTER_ALIVE) == COMMAND_FILTER_ALIVE
|
||||||
&& pTarget->GetLifeState() != PLAYER_LIFE_ALIVE)
|
&& pTarget->GetLifeState() != PLAYER_LIFE_ALIVE)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user