• Приветствуем на сайте, Гость! Обязательно ознакомьтесь с условиями и правилами Публичной оферты Проекта 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

Garbage [nutscript] и кое что еще

  • Автор темы Автор темы Nvault
  • Дата начала Дата начала
Статус
В этой теме нельзя размещать новые ответы.

Nvault

Пользователь
Регистрация
30 Ноя 2017
Сообщения
13
Реакции
0
Баллы
14
Возраст
30
Адрес
Moscow
Веб-сайт
vk.com
Доброго времени суток.


В nutscript есть плагин добавляющий для класса hobo возможность собирать мусор по карте и обрабатывать его через машинку.

Всё работает как надо, да есть проблема с loopsound, но не в этом суть.

Я не смог найти функцию которая сохраняет мусор на карте и респавнит его через n-ое кол-во секунд/минут. Есть решение этого?)


Флаги.
Админы (не СА), могут по умолчанию спавнить себе оружия и энтити (что не нужно), убрать я конечно же это не смог. Хотелось бы узнать все выдаваемые флаги при старте игроку и какие функции они выполняют.
Например я пытался дописать во флаг p который идет по умолчанию в sh_flags.lua, выдачу кроме ФизГана, еще и ПсихГана:

Код:
nut.flag.add("p", "Access to the physgun.", function(client, isGiven)
        if (isGiven) then
            client:Give("weapon_physgun")
            client:SelectWeapon("weapon_physgun")
            client:Give("weapon_physcannon")
            client:SelectWeapon("weapon_physcannon")
        else
            client:StripWeapon("weapon_physgun")
            client:StripWeapon("weapon_physcannon")
        end
    end)
Но оружие не выдается при старте, выдается только ФизГан, Ключи, Тулган.
Как это вообще работает?)))
 
@Nvault, ты выдаешь оружие, а не флаги.
По поводу уборщика:
Код:
function PLUGIN:SaveData()
    local data = {}

    for k, v in ipairs(ents.FindByClass("название_ентити_мусора")) do
        data[#data + 1] = {v:GetPos(), v:GetAngles(), v:GetModel()}
    end

    self:setData(data)
end

function PLUGIN:LoadData()
    local data = self:getData()

    if (data) then
        for k, v in ipairs(data) do
            local storage = ents.Create("название_ентити_мусора")
            storage:SetPos(v[1])
            storage:SetAngles(v[2])
            storage:Spawn()
            storage:SetModel(v[3])
            storage:SetSolid(SOLID_VPHYSICS)
            storage:PhysicsInit(SOLID_VPHYSICS)
          
            local physObject = storage:GetPhysicsObject()

            if (physObject) then
                physObject:EnableMotion()
            end
        end
    end
end
а вообще мне бы увидеть плагин hobo чтобы написать более точное сохранение.

Функция Give выдает оружие игрока, а SelectWeapon выбирает оружие которое есть у игрока и переключается на него.
 
При спавне игроку выдается по дефолту:
Ключи, Руки, ФизГан, ТулГан, Камера.
Я и не могу найти где сделать чтобы выдать еще одно оружие: weapon_physcannon


а вообще мне бы увидеть плагин hobo чтобы написать более точное сохранение.
плагин
Эта ссылка скрыта от группы "Гость" (группа пользователей, которые еще не прошли регистрацию или авторизацию на Проекте). Чтобы увидеть эту ссылку Вам требуется авторизоваться или пройти регистрацию на Проекте (зарегистрироваться).

Короче там просто нет функции которая... сохраняет энтити на карте и которая респавнит их каждые n-ое время, но в описании плагина было написано что оно уже есть.
 
@Nvault, там же и выдавай во флаге P.
[doublepost=1512351907,1512351287][/doublepost]Если ты используешь schema CityRP, тогда и пиши автору разработки.
А так добавь в schema/sv_hooks.lua код
Код:
function SCHEMA:CrapPayload()
    local max = nut.config.get("garbageCount", 25)
    local why = SCHEMA.crapPositions or {}
    local cnt = table.Count(why)
    local rndIdx = {}
    local fts = ents.FindByClass("nut_grabage")

    if (#fts > 25) then
        return
    end

    while (table.Count(rndIdx) < math.min(cnt, max)) do
        local rdix = math.random(1, cnt)

        if (!table.HasValue(rndIdx, rdix)) then
            table.insert(rndIdx, rdix)
        end
    end

    for k, v in ipairs(rndIdx) do
        local pos = why[v]
        if (#fts > nut.config.get("garbageMax", 25)) then
            return
        end

        local c = ents.Create("nut_grabage")
        c:SetPos(pos + Vector(0, 0, 5))
        c:Spawn()
        c:Activate()
    end
end

в shema/sh_configs.lua
Код:
nut.config.add("garbageMax", 25, "How many trash can be in single world.", nil, {
    data = {min = 0, max = 100},
    category = "schema"
})

nut.config.add("garbageCount", 7, "How many trash spawned in one tick.", nil, {
    data = {min = 0, max = 100},
    category = "schema"
})

nut.config.add("garbageInterval", 20, "How long trash regen takes.",
    function(oldValue, newValue)
        if (timer.Exists("nutGrabage")) then
            timer.Adjust("nutGrabage", newValue, 0, SCHEMA.CrapPayload)
        end
    end, {
    data = {min = 10, max = 3600},
    category = "schema"
})

в shema/sh_hooks.lua
Код:
function SCHEMA:InitializedSchema()
    if (SERVER) then
        timer.Create("nutGrabage", nut.config.get("garbageInterval", 20), 0, SCHEMA.CrapPayload)
    else
end
[doublepost=1512351972][/doublepost]Вообщем это не все, поставь эту разработку
Эта ссылка скрыта от группы "Гость" (группа пользователей, которые еще не прошли регистрацию или авторизацию на Проекте). Чтобы увидеть эту ссылку Вам требуется авторизоваться или пройти регистрацию на Проекте (зарегистрироваться).
и будь доволен или тащи от сюда нужный код.
 
Вообщем это не все, поставь эту разработку
Эта ссылка скрыта от группы "Гость" (группа пользователей, которые еще не прошли регистрацию или авторизацию на Проекте). Чтобы увидеть эту ссылку Вам требуется авторизоваться или пройти регистрацию на Проекте (зарегистрироваться).
и будь доволен или тащи от сюда нужный код.
Она и стоит))
Спасибо за помощь.
[doublepost=1512355408,1512352764][/doublepost]Нашел где выдавать дефолтное оружие.
Посмотреть вложение 1004


shema/sv_hooks.lua

Флаги на это вообще не влияют, мда.
 
@Hikka, Как на CityRP от rebel включить спавн мусора ?
 
В этом то и проблема. Становлюсь бомжом но мусора нет нигде
Вроде бы работает так: ты бомж и когда мусор вылетает из мусорки ты его видешь, после инициализации пропа крч.
 
Вроде бы работает так: ты бомж и когда мусор вылетает из мусорки ты его видешь, после инициализации пропа крч.
Можем где-нибудь обговорить это? И чем, кстати, CityRP отличается от другой рп схемы ?
 
Можем где-нибудь обговорить это? И чем, кстати, CityRP отличается от другой рп схемы ?
тем что он заточен типо под "DarkRP", а вообще это вроде аналог некогда популярного геймода CityRP.
Эта ссылка скрыта от группы "Гость" (группа пользователей, которые еще не прошли регистрацию или авторизацию на Проекте). Чтобы увидеть эту ссылку Вам требуется авторизоваться или пройти регистрацию на Проекте (зарегистрироваться).
 
тем что он заточен типо под "DarkRP", а вообще это вроде аналог некогда популярного геймода CityRP.
Эта ссылка скрыта от группы "Гость" (группа пользователей, которые еще не прошли регистрацию или авторизацию на Проекте). Чтобы увидеть эту ссылку Вам требуется авторизоваться или пройти регистрацию на Проекте (зарегистрироваться).
Добавил.
 
Решение:
1.
Эта ссылка скрыта от группы "Гость" (группа пользователей, которые еще не прошли регистрацию или авторизацию на Проекте). Чтобы увидеть эту ссылку Вам требуется авторизоваться или пройти регистрацию на Проекте (зарегистрироваться).
эта ентити отвечает за сдачу мусора, только для HOBO.
2. Командой /crappos (в чат), можно создать точку спавна мусора, который потом может поднять HOBO.
3. Возможно еда это тоже мусор, но это не точно, не проверено.

Команда:
Эта ссылка скрыта от группы "Гость" (группа пользователей, которые еще не прошли регистрацию или авторизацию на Проекте). Чтобы увидеть эту ссылку Вам требуется авторизоваться или пройти регистрацию на Проекте (зарегистрироваться).
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Главная Регистрация
Назад
Сверху