Как сделать продажу доступа к Wire?

Понадобилось добавить весь Wire Mod в донат меню. Как то возможно сделать?

закидуй в garrysmod/lua/autorun/igs_wiremod.lua

hook.Add("CanTool", "igs_wiremod", function(ply, _, toolname) -- запрещает использование инструмента
	if toolname:StartWith("wire_") and not ply:HasPurchase("igs_wiremod") then
		return false
	end
end)

if CLIENT then
	cvars.AddChangeCallback("gmod_toolmode", function(name, old, new) -- выводит уведомлению при экипировке инструмента, если у игрока не куплен доступ
		if LocalPlayer():HasPurchase("igs_wiremod") or old == new or new:StartWith("wire_") == false then return end

		notification.AddLegacy("Wire-mod доступен только по подписке! Нажмите F6 что-бы ознакомиться с предложением.", NOTIFY_ERROR, 3)
	end, "igs_wiremod")
end

Создание igs айтема:

IGS("Доступ к Wire-mod", "igs_wiremod")
:SetPrice(160)
:SetTerm(30)

Так-же может быть интересно:

пы-сы:
возможно для надёжности стоит добавить проверку свойства WireClass

но я посчитал это избыточным.
если всё таки возникнет такая мега специфическая ситуация что у вас на сервере окажется инструмент с классом начинающимся на wire_ - переименуйте его или добавьте проверку на свойство WireClass (или проверку какой-нибудь другой уникальной фигни для вайра)

Стоит добавить :SetNetworked(), чтобы HasPurchase работал и на клиенте, поскольку в хуке CanTool выше есть такая проверка и на клиенте

оу, не знал о :SetNetworked - спасибо