SG: Запрет на снятие админок автодонат-системой

Как для сервера с ServerGuard сделать так, чтобы у администраторов не устанавливались ранее купленные донат-привилегии?

Например, если в текущей привилегии игрока есть serverguard.player:HasPermission(ply, “admin”), то его текущая привилегия не должна автоматически заменяться на донат-привилегию.

Админки на сервере не продаются. Вариант выдавать привилегии через автодонат (в том числе через IsHidden-товар) или снимать ранее купленные товары не подходит.

На данный момент используется IGS/serverguard.lua at main · GM-DONATE/IGS · GitHub, но не удалось добавить туда игнорирование админок.

Почему не подходит?
Назови хоть одну причину?
Безусловно выдача привилегий в gmd сделана крайне по конченному, но предложенные амд варианты рабочие.

Я же спросил про варианты реализации через скриптовую часть без снятия с людей привилегий…

зачем? сделай как тебе сказали, просто создай hidden привелегию и выдай её админам.

Абсолютно кривой костыль, который гипотетически должен решаться одним условием в коде.

работай с тем что имеешь.
я хз почему это работает так, думаю это не сложно исправить.

В следующей версии IGS появится этот хук, в котором можно отключить восстановление SG прав для какого-либо игрока

Можешь заранее добавить этот код:

-- addons/igs-modification/lua/autorun/server/igs_skip_sg.lua
hook.Add("IGS.SkipSGRestore", "skip_sg_admin", function(pl)
	if serverguard.player:HasPermission(pl, "admin") then
		return true
	end
end)

А если сильно критично быстро нужно, то можешь скопировать содержимое файла по ссылке и поместить его по пути addons/igs-modification/lua/igs/extensions/serverguard.lua, внеся изменения как на моем скриншоте выше самостоятельно.

Если сделаешь это, то после обновления IGS файл желательно удалить, чтобы в будущем не было несостыковок

2 симпатии