Welcome to Сообщество игровых серверов NETZONA.ORG

Присоединяйтесь к нам сейчас, чтобы получить доступ ко всем нашим функциям. Зарегистрировавшись и войдя в систему, вы сможете создавать темы, публиковать ответы в существующих темах, давать репутацию другим участникам, получать собственный личный мессенджер и многое другое. Это также быстро и совершенно бесплатно, так чего же вы ждете?
  • Приветствуем на сайте, Гость! Обязательно ознакомьтесь с условиями и правилами Публичной оферты Проекта 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

Ограничение классов для некоторых людей.

AlterFranky

Пользователь
Регистрация
25 Авг 2017
Сообщения
36
Реакции
0
Баллы
16
Возраст
20
Пол
Нужно ограничить классы, как угодно. Сначала я думал будет команда по типу /charsetclass, но ее нет.
Есть ли возможность какая то выдавать классы?
Я нашел кое какую функцию, желательно превратить ее в команду, но я не умею.

Character:setClass(classID).
 

Hikka

Модератор
Команда форума
Проверенный
Регистрация
29 Сен 2016
Сообщения
555
Реакции
1
Баллы
60
Возраст
30
Пол
это пишешь в classes
Lua:
CLASS.onCanBe = function(client)
    return false
end
нельзя будет выбрать в F1 > Классы

Установить класс персонажу. plysetclass hikka civilian hobo (примерно так)
Lua:
nut.command.add("plysetclass", {
    adminOnly = true,
    syntax = "<string name> <string faction> <string class>",
    onRun = function(client, arguments)
        local target = nut.command.findPlayer(client, arguments[1])
        local name = table.concat(arguments, " ", 2)
        local group = arguments[3]
        if (!group) then
            for k, v in ipairs(nut.class.list) do
                return client:notify(Format("Доступные подклассы: %s [%s]", v, k))
            end
        end
       
        local tChar = target:getChar()
        if (IsValid(target) and tChar) then
            local faction = nut.faction.teams[name]

            if (!faction) then
                for k, v in ipairs(nut.faction.indices) do
                    if (nut.util.stringMatches(L(v.name, client), name)) then
                        faction = v
                        break
                    end
                end
            end

            if (faction) then
                tChar.vars.faction = faction.uniqueID
                tChar:setFaction(faction.index)

                if (faction.onTransfered) then
                    faction:onTransfered(target)
                end
               
                tChar:setClass(group)

                for k, v in ipairs(player.GetHumans()) do
                    nut.util.notifyLocalized("cChangeFaction", v, client:Name(), target:Name(), L(faction.name, v))
                end
            else
                return "@invalidFaction"
            end
        end
    end
})

p.s писал код на не спавшую голову (21 час)
 
Последнее редактирование:

AlterFranky

Пользователь
Регистрация
25 Авг 2017
Сообщения
36
Реакции
0
Баллы
16
Возраст
20
Пол
это пишешь в classes
Lua:
CLASS.onCanBe = function(client)
    return false
end
нельзя будет выбрать в F1 > Классы

Установить класс персонажу. plysetclass hikka civilian hobo (примерно так)
Lua:
nut.command.add("plysetclass", {
    adminOnly = true,
    syntax = "<string name> <string faction> <string class>",
    onRun = function(client, arguments)
        local target = nut.command.findPlayer(client, arguments[1])
        local name = table.concat(arguments, " ", 2)
        local group = arguments[3]
        if (!group) then
            for k, v in ipairs(nut.class.list) do
                return client:notify(Format("Доступные подклассы: %s [%s]", v, k))
            end
        end
      
        local tChar = target:getChar()
        if (IsValid(target) and tChar) then
            local faction = nut.faction.teams[name]

            if (!faction) then
                for k, v in ipairs(nut.faction.indices) do
                    if (nut.util.stringMatches(L(v.name, client), name)) then
                        faction = v
                        break
                    end
                end
            end

            if (faction) then
                tChar.vars.faction = faction.uniqueID
                tChar:setFaction(faction.index)

                if (faction.onTransfered) then
                    faction:onTransfered(target)
                end
              
                tChar:setClass(group)

                for k, v in ipairs(player.GetHumans()) do
                    nut.util.notifyLocalized("cChangeFaction", v, client:Name(), target:Name(), L(faction.name, v))
                end
            else
                return "@invalidFaction"
            end
        end
    end
})

p.s писал код на не спавшую голову (21 час)
Сделал sh_commands.lua в папку schema, вписал ее в sh_schema, но команда так и не работает (ее не видит)
 

AlterFranky

Пользователь
Регистрация
25 Авг 2017
Сообщения
36
Реакции
0
Баллы
16
Возраст
20
Пол
это пишешь в classes
Lua:
CLASS.onCanBe = function(client)
    return false
end
нельзя будет выбрать в F1 > Классы

Установить класс персонажу. plysetclass hikka civilian hobo (примерно так)
Lua:
nut.command.add("plysetclass", {
    adminOnly = true,
    syntax = "<string name> <string faction> <string class>",
    onRun = function(client, arguments)
        local target = nut.command.findPlayer(client, arguments[1])
        local name = table.concat(arguments, " ", 2)
        local group = arguments[3]
        if (!group) then
            for k, v in ipairs(nut.class.list) do
                return client:notify(Format("Доступные подклассы: %s [%s]", v, k))
            end
        end
      
        local tChar = target:getChar()
        if (IsValid(target) and tChar) then
            local faction = nut.faction.teams[name]

            if (!faction) then
                for k, v in ipairs(nut.faction.indices) do
                    if (nut.util.stringMatches(L(v.name, client), name)) then
                        faction = v
                        break
                    end
                end
            end

            if (faction) then
                tChar.vars.faction = faction.uniqueID
                tChar:setFaction(faction.index)

                if (faction.onTransfered) then
                    faction:onTransfered(target)
                end
              
                tChar:setClass(group)

                for k, v in ipairs(player.GetHumans()) do
                    nut.util.notifyLocalized("cChangeFaction", v, client:Name(), target:Name(), L(faction.name, v))
                end
            else
                return "@invalidFaction"
            end
        end
    end
})

p.s писал код на не спавшую голову (21 час)
Окей не важно, была ошибка в коде, вызванная другими доп. командами, которая руинила все, спасибо
 
Назад
Сверху Снизу