• Приветствуем на сайте, Гость! Обязательно ознакомьтесь с условиями и правилами Публичной оферты Проекта NetZONA.org: https://netzona.org/help/public-offer/

  • Приветствуем на сайте, Гость! Обязательно ознакомьтесь с условиями и правилами использования Ваших файлов cookie на Проекте NetZONA.org: https://netzona.org/help/cookies/

  • Приветствуем на сайте, Гость! Обязательно ознакомьтесь с Политикой конфиденциальности Проекта NetZONA.org: https://netzona.org/pages/privacy-policy/

  • Ответы на основные вопросы: https://netzona.org/threads/populjarnye-voprosy-i-otvety-na-nix.6122/

  • Приветствуем на сайте, Гость! Приобрести (купить) Информационную услугу (в том числе группу "Проверенный") на Проекте NetZONA.org: https://netzona.org/account/upgrades

Изменение кода

Xindi's 'Jem

Пользователь
Регистрация
9 Янв 2022
Сообщения
32
Реакции
-1
Баллы
15
Клан-тег
#'1000-7'#
Пол
Мужской
Семейное положение
Не выбрано
Вообщем, мне требуется переписать код под SAM, по дефолту он стоит на ULX. Помогите пожалуйста
function ulx.addXP(calling_ply, target_ply, amount)
if not amount then ULib.tsayError("Amount not specified!") return end
if target_ply.DarkRPUnInitialized then return end
target_ply:addXP(amount, true)
DarkRP.notify(target_ply, 0,4,calling_ply:Nick() .. " gave you "..amount.."XP")
ulx.fancyLogAdmin(calling_ply, "#A has gave #T an xp amount of #s", target_ply, amount)
end
local addXPx = ulx.command("Levels", "ulx addxp", ulx.addXP, "!addxp")
addXPx:addParam{type=ULib.cmds.PlayerArg}
addXPx:addParam{type=ULib.cmds.NumArg, hint="xp"}
addXPx:defaultAccess(ULib.ACCESS_ADMIN)
addXPx:help("Add XP to a player.")

function ulx.setLevel(calling_ply, target_ply, level)
if not level then ULib.tsayError("Level not specified!") return end
if target_ply.DarkRPUnInitialized then return end
DarkRP.storeXPData(target_ply,level,0)
target_ply:setDarkRPVar("level",level)
target_ply:setDarkRPVar("xp",0)
DarkRP.notify(target_ply, 0,4,calling_ply:Nick() .. " set your level to "..level)
ulx.fancyLogAdmin(calling_ply, "#A has set #T level to #s", target_ply, level)
end
local setLevelx = ulx.command("Levels", "ulx setlevel", ulx.setLevel, "!setlevel")
setLevelx:addParam{type=ULib.cmds.PlayerArg}
setLevelx:addParam{type=ULib.cmds.NumArg, hint="level"}
setLevelx:defaultAccess(ULib.ACCESS_ADMIN)
setLevelx:help("Set a players level.")
 
Какие именно уровни добавляет данный код?
 
Вопрос, что за система. По коду схоже с Vrondakis, код частично готов, но нужен ответ.
Сообщение автоматически объединено:

Короче разобрался, что это Vrondakis. Модуль уже на твой код есть. (Некоторые пометил, чтобы понял). Закидываешь в модули.
Lua:
if SAM_LOADED then return end

local sam, command = sam, sam.command

command.set_category("Другое") -- Название категории

command.new("addxp")
    :SetPermission("addxp", "superadmin") -- Изначально доступ будет только у Superadmin

    :AddArg("player", {single_target = true}) -- Можно выбрать только одного игрока
    :AddArg("number", {hint = "xp", default = 1, min = 1}) -- Ну это уже аргумент и сам разберешься
  :Help("Выдаёт опыт игроку.") -- Просто текст под командой

  :OnExecute(function(ply, targets, xp)
    local target = targets[1]
        if target.DarkRPUnInitialized then return end

    target:addXP(xp, true)
        DarkRP.notify(target, 0, 4, ply:Nick() .. " выдал тебе " .. xp .. "Опыт(а)")
    
    if sam.is_command_silent then return end
        sam.player.send_message(nil, "{A} выдал игроку {T} {V} Опыта.", {
            A = ply, T = targets, V = xp
        })
    end)
:End()

command.new("setlevel")
    :SetPermission("setlevel", "superadmin")

    :AddArg("player", {single_target = true})
    :AddArg("number", {hint = "level", default = 1, min = 1})

    :Help("Устанавливает уровень.")

    :OnExecute(function(ply, targets, level)
        local target = targets[1]
        if target.DarkRPUnInitialized then return end

        DarkRP.storeXPData(target, level, 0)
        target:setDarkRPVar("level", level)
        target:setDarkRPVar("xp", 0)
        DarkRP.notify(target, 0, 4, ply:Nick() .. " установил твой уровень на " .. level)

        if sam.is_command_silent then return end
        sam.player.send_message(nil, "{A} установил уровень для {T} на {V}.", {
            A = ply, T = targets, V = level
        })
    end)
:End()
 
Главная Регистрация
Назад
Сверху