[DarkRP] Продажа профессий

Есть такая функция которая позволяет выдавать работу на дарк рп, :SetDarkRPTeams(“hobo”)
Как ее настроить или как сделать так что бы только при покупки можно было бы выбрать эту “команду/работу”
Админ панель SAM

В jobs.lua от DarkRP находишь нужную профу, копируешь ее command, создаешь предмет с методом SetDarkRPTeams и в его аргументах указываешь команды тим, которые станут доступны после покупки

Пример предмета:

IGS("Набор проф #1", "teams_pack_1", 228) -- 228 руб
	:SetDarkRPTeams("hobo", "juggernaut")
	:SetDescription("Вам станут доступны профы Бомж и Джаггернаут")
	:SetTerm(30) -- 30 дней

Можно указывать как одну, так и несколько проф через запятую, как я сделал выше.

Вот тут брать command профы:

Файл jobs.lua от DarkRP

Заметка

Метод делает так, что профы, которые продаются становятся недоступными для тех, кто их не купил (их нельзя выбрать в меню проф). Чтобы более точечно управлять доступом к продаваемым профам, можно использовать хук IGS.playerCanChangeTeam

Пример использования хука


-- Хук выполняется, если игрок пытается взять профессию, которая продается
-- Это еще не значит, что он ее купил, просто она продается
hook.Add("IGS.playerCanChangeTeam", "teams_controller", function(pl, iTeam, bForce)
	if pl:SteamID() == "STEAM_0:1:23456789" then
		-- return false запрещает брать профу, несмотря на то, что человек ее купил
		return false, "Лично для тебя это запрещено"
	end

	if pl:IsUserGroup("premium") then
		return true -- премиумам разрешаем брать даже платные профы
	end

	if bForce then -- обычно это попытка админа взять профу мимо F4 меню
		return true
	end
end)

Куда добавить этот хук?

куда угодно в серверную или шаред часть. Можно в sh_additems

IGS("Профессия", "job") -- название
	:SetDarkRPTeams("hobo") -- command профессии
	:SetDescription("hobo") -- описание
	:SetTerm(30) -- 30 дней
    :SetPrice(200) -- цена

Как в этот хук добавить запрет на установку профессии через fadmin?

замени на false, а лучше вовсе удалить.

1 лайк

Спасибо, помог