Ну значит все должно работать. У меня все работает. А суперадмин может?
Да может
TEAM точно ADMIN называется?
Профа или что?
Ну TEAM_ это как бы профессия игрока
Да, админ.
Тогда это странно. сделай принт print(ply:GetUserGroup()) перед условием и напиши что тебе выдало.
Я не внимательно прочитал твой вопрос. Вот исправленный код:
local USERGROUP = {
["root"] = true
}
hook.Add("PhysgunPickup", "pickUpPlayer", function(ply, ent)
if (ply:IsSuperAdmin() or (USERGROUP[ply:GetUserGroup()] or ply:Team() == TEAM_ADMIN) ) and ent:IsPlayer() then
return true
end
return false
end)
Ты ввел код который я тебе дал выше?
Да, написал.
Но теперь ты не можешь брать пропы?
Да не могуу
Замени тогда ent:IsPlayer() на IsValid(ent). Но тогда игроки не смогут брать пропы
Так?
local USERGROUP = {
[“root”] = true
}
hook.Add(“PhysgunPickup”, “pickUpPlayer”, function(ply, ent)
if (ply:IsSuperAdmin() or (USERGROUP[ply:GetUserGroup()] or ply:Team() == TEAM_ADMIN) ) and IsValid(ent) then
return true
end
return false
end)
Да, так
Дальше не могу брать пропы!
Ну попробуй вот этот тогда
local USERGROUP = {
["root"] = true
}
hook.Add("PhysgunPickup", "pickUpPlayer", function(ply, ent)
if (ply:IsSuperAdmin() or USERGROUP[ply:GetUserGroup()] or ply:Team() == TEAM_ADMIN ) and ent:IsPlayer() then
return true
end
end)
Может быть интересно:
Вообще, нужно посмотреть, что этот хук делает в самом SAM, потому что этот хук не желательно просто вот так брать и делать в нем return true
/ return false
. Это может отключить срабатывание этого хука в других аддонах
Вот код, который будет работать при условии, что другой хук не создаст конфликт для этого хука
local allowed_usergroups = {
["root"] = true,
["superadmin"] = true,
}
hook.Add("PhysgunPickup", "restrict_groups", function(pl, targ)
if not targ:IsPlayer() then return end -- если цель - не игрок, то дальше не идем
local allow_use = allowed_usergroups[ pl:GetUserGroup() ] or pl:Team() == TEAM_ADMIN
return allow_use
end)
Но при этом и этот код может сломать другие хуки PhysgunPickup
, поэтому лучше действительно посмотреть, как этот хук устроен в SAM
Я закинул настроил все работает, но игрока которго берут физганом его начинает дергать вниз в верх и он умирает, как это исправить ? Подскажи пожалуйста.