[SAM] Поднятие игроков по иммунитету

Как сделать поднятие игроков по иммунитету в sam админке? Например я superadmin и dadmin захотел поднять меня но он не может так как он ниже меня.

открой !menu настройка групп и нажми на группу которую хочешь настроить нажми edit( ставишь имунитет допустим 5 если у dadmin и у superadmin имунитет 5 то они могут друг друга таскать если у одного 5 а у другого 4, то тот у кого 4 не может таскать того у кого 5 а тот у кого 5 может таскать того у кого 4 кароче надеюсь ты понял

просто у меня код на adminmode для sam и оно при активации разрешает брать любых игроков, и хотелось бы это как то пофиксить

Скинь код

	local rank = sam.ranks.get_immunity(ply) > sam.ranks.get_immunity(target)
	sam.hook_first("PhysgunPickup", "SAM.CanPhysgunPlayer", function(ply, target)
		if sam.type(target) == "Player" and ply:HasPermission("can_physgun_players") and not rank then
			freeze_player(target)
			return true
		end
	end)

короче сколько я не пытался но он не работает, я думал сработает но нет

[Kirya|3|STEAM_0:1:619907201] Lua Error:

[sam] addons/sam/lua/sam/ranks/sh_ranks.lua:13: attempt to index local ‘ranks’ (a nil value)

  1. get_rank - addons/sam/lua/sam/ranks/sh_ranks.lua:13
  2. get_immunity - addons/sam/lua/sam/ranks/sh_ranks.lua:90
    3. unknown - addons/sam/lua/sam/modules/util.lua:112
    4. func - [C]:-1
    5. load_file - addons/sam/lua/autorun/sam.lua:45
    6. unknown - addons/sam/lua/autorun/sam.lua:106
sam.hook_first("PhysgunPickup", "SAM.CanPhysgunPlayer", function(ply, target)
local rank = sam.ranks.get_immunity(ply) > sam.ranks.get_immunity(target)
		if sam.type(target) == "Player" and ply:HasPermission("can_physgun_players") and rank then
			freeze_player(target)
			return true
		end
	end)

Я просто по случайности not поставил, пробуй, ес че - пиши, если у тебя уебанский админ-мод - тоже напиши

У меня !adminmode от сюда [SAM] AdminMode но ещё переделанный мной немного, а SAM слитый с брокенкора

sam.hook_first("PhysgunPickup", "SAM.CanPhysgunPlayer", function(ply, target)
local rank = sam.ranks.get_immunity(ply) > sam.ranks.get_immunity(target)
		if sam.type(target) == "Player" and ply:HasPermission("can_physgun_players") and ply:CanTarget(target) && IsValid(ply) && ply:IsPlayer() && ply:GetNWString('adminmode') == true || ply:GetNWString('adminmode') ~= false and rank then
			freeze_player(target)
			return true
		end
	end)

ща поставлю и попробую

[sam] addons/sam/lua/sam/modules/util.lua:113: attempt to compare two boolean values

  1. unknown - addons/sam/lua/sam/modules/util.lua:113
  2. unknown - addons/all_lua/lua/includes/modules/hook.lua:313 (x289)

я уже не ебу че делать, я пытался все