Случайная подборка модов
Prosectors Project
4.0
Oblivion Lost Remake
4.1
Путь в Припять
3.8
Холодная кровь
3.4
Время Альянса 3. Связь Времен
3.4
Белый отряд
3.7
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Модератор форума: FanG, Аdmin, FantomICW, Overfirst  
[CoP] Модострой: вопросница
Российская Федерация  Overfirst
Воскресенье, 31.12.2017, 13:17 | Сообщение # 1
Статус:
Бывалый:
Сообщений: 1081
Награды: 19
Регистрация: 11.06.2015

[CoP] Модострой: вопросница

Тема посвящена моддингу на платформе Зов Припяти.

Соседние темы: Тень Чернобыля / Чистое небо.


  • Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском по разделу, ответ на него, вероятно, уже есть.

  • Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода.

  • Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа).

  • Благодарность выражаем в личке или же ставим плюсик в историю репутации. Подобные посты будут удаляться.
  •   Злобная реклама
    Воскресенье, 31.12.2017, 13:17
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  denis2000
    Пятница, 22.05.2020, 21:04 | Сообщение # 6946
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Stalker54, Если нужно полностью, то можно удалить у модели НПС шейп, а если нужен полупрозрачный то соответствующими шейдерами с прозрачностью.


    OP_artovod, Текстура trees_fuflo прозрачна только при определенном шейдере, на стандартном шейдере НПС она будет непрозрачной.
    Сообщение отредактировал denis2000 - Пятница, 22.05.2020, 21:07
      Злобная реклама
    Пятница, 22.05.2020, 21:04
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  Stalker54
    Пятница, 22.05.2020, 21:09 | Сообщение # 6947
    Статус:
    Зевака:
    Сообщений: 29
    Награды: 0
    Регистрация: 20.05.2020

    denis2000, шейп удалять в actor editor'e ? Или нужен 3d's max с аддоном ?
    Сообщение отредактировал Stalker54 - Пятница, 22.05.2020, 21:11
      Злобная реклама
    Пятница, 22.05.2020, 21:09
    Статус:
    Сообщений: 666
    Регистрация: 20.05.2020
    Российская Федерация  denis2000
    Пятница, 22.05.2020, 21:12 | Сообщение # 6948
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Stalker54, Для этого 3D редактор требуется.
      Злобная реклама
    Пятница, 22.05.2020, 21:12
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Украина  AziatkaVictor
    Пятница, 22.05.2020, 22:23 | Сообщение # 6949
    Статус:
    Опытный:
    Сообщений: 1313
    Награды: 4
    Регистрация: 30.08.2018

    Вот скрипт, который присваивает надпись. Я хочу, чтобы если в руках нож была одна запись, а если нет - другая. И я сделал так:
    Код
    local character_use = (ini:r_string(self.object:section(), "character_use"))
      local character_not_use = "monstr_character_use"
      if db.actor:active_slot()==1 then
       self.object:set_tip_text(character_use)
      else
       self.object:set_tip_text(character_not_use)
      end
    Но тут проблема, надпись присваивается в момент смерти мутанта, то есть, если я убил его ножом будет одна надпись, а если пистолетом - другая. Как сделать проверку каждую секунду для надписи, как в Update, чтобы она менялась при смене оружия?
      Злобная реклама
    Пятница, 22.05.2020, 22:23
    Статус:
    Сообщений: 666
    Регистрация: 30.08.2018
    Российская Федерация  OP_artovod
    Пятница, 22.05.2020, 22:45 | Сообщение # 6950
    Статус:
    Отмычка:
    Сообщений: 125
    Награды: 0
    Регистрация: 28.03.2020

    AziatkaVictor, Эм я конечно в скриптах не силён, но может сделать такую же проверку для другого оружия с другим текстом
      Злобная реклама
    Пятница, 22.05.2020, 22:45
    Статус:
    Сообщений: 666
    Регистрация: 28.03.2020
    Украина  AziatkaVictor
    Пятница, 22.05.2020, 22:46 | Сообщение # 6951
    Статус:
    Опытный:
    Сообщений: 1313
    Награды: 4
    Регистрация: 30.08.2018

    OP_artovod, я как бы это и сделал... Не надо давать советы, если не понимаешь.
      Злобная реклама
    Пятница, 22.05.2020, 22:46
    Статус:
    Сообщений: 666
    Регистрация: 30.08.2018
    Российская Федерация  makdm
    Пятница, 22.05.2020, 22:57 | Сообщение # 6952
    Время Альянса
    Статус:
    Опытный:
    Сообщений: 1787
    Награды: 19
    Регистрация: 22.11.2012

    Цитата AziatkaVictor ()
    Я хочу, чтобы если в руках нож была одна запись, а если нет - другая.

    Цитата AziatkaVictor ()
    Как сделать проверку каждую секунду для надписи, как в Update, чтобы она менялась при смене оружия?

    Вообще ничего не понял.
    Вроде как, что ты хотел, то и получилось!
    Сообщение отредактировал makdm - Пятница, 22.05.2020, 22:59
      Злобная реклама
    Пятница, 22.05.2020, 22:57
    Статус:
    Сообщений: 666
    Регистрация: 22.11.2012
    Российская Федерация  Kelvin
    Пятница, 22.05.2020, 23:13 | Сообщение # 6953
    Статус:
    Зевака:
    Сообщений: 19
    Награды: 0
    Регистрация: 17.05.2019

    Всем добра написал проверку для логики которая проверяет что выброс закончился, но с задержкой.
    Цитата
    function surge_complete_delay(p)
    local time_delay = time_global() + p[1] * 1000
    return surge_manager.is_finished() or fallout_manager.is_finished() or psi_storm_manager.is_finished() and time_global() > time_delay
    end

    Но я словил вылет
    Код
    Expression    : !m_error_code
    Function      : raii_guard::~raii_guard
    File          : ..\xrServerEntities\script_storage.cpp
    Line          : 748
    Description   : ...all of pripyat\gamedata\scripts\xr_conditions.script:1756: attempt to perform arithmetic on field '?' (a nil value)

    Я так понял это из-за того что я помножил на p[1]. Если это так то можно это как то обойти?
    P.S И да у меня еще подключена атмосфера поэтому там ещё проверки на другие явления зоны.
      Злобная реклама
    Пятница, 22.05.2020, 23:13
    Статус:
    Сообщений: 666
    Регистрация: 17.05.2019
    Российская Федерация  Overfirst
    Пятница, 22.05.2020, 23:15 | Сообщение # 6954
    Статус:
    Бывалый:
    Сообщений: 1081
    Награды: 19
    Регистрация: 11.06.2015

    Код
    function surge_complete_delay(p)

    Это неправильно. Параметр p передаётся третьим. Первые два - объект актора и объект того, откуда вызывается функция. Вот так верно:
    Код
    function surge_complete_delay(actor, npc, p)

    Вылета не будет, но реализация функции выглядит очень сомнительно... smile
    Оно не будет работать так, как вы хотите.
    Выполнение происходит практически мгновенно и последнее выражение time_global() > time_delay никогда не успеет вернуть true.
      Злобная реклама
    Пятница, 22.05.2020, 23:15
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  Kelvin
    Пятница, 22.05.2020, 23:28 | Сообщение # 6955
    Статус:
    Зевака:
    Сообщений: 19
    Награды: 0
    Регистрация: 17.05.2019

    Цитата Overfirst ()
    Параметр p передаётся третьим
    Теперь буду знать спасибо.

    Цитата Overfirst ()
    никогда не успеет вернуть true.
    А если так?
    Код
    function surge_complete_delay(actor, npc, p)
        local time_delay = time_global() + p[1] * 1000
        if time_global() > time_delay then
        return surge_manager.is_finished() or fallout_manager.is_finished() or psi_storm_manager.is_finished()
    end
    end
    Сообщение отредактировал Kelvin - Пятница, 22.05.2020, 23:28
      Злобная реклама
    Пятница, 22.05.2020, 23:28
    Статус:
    Сообщений: 666
    Регистрация: 17.05.2019
    Испания  Ayer
    Пятница, 22.05.2020, 23:29 | Сообщение # 6956
    Статус:
    Зевака:
    Сообщений: 3
    Награды: 0
    Регистрация: 22.05.2020

    Доброго времени суток, сделал метательный нож на классе болта (реализацию взял в Упавшей Звезде). Если метнуть нож в НПС который в данный момент выполняет работу на смарт кавере - хит нпс не наносится - hit_callback вообще не срабатывает. Для дефолтных работ на смарт каверах (типа stay_table, stay_wall - без указания Available_animations в логике) хит не срабатывает всегда, если указать другую анимку, то с некоторым хит срабатывает (например с ward), с некоторыми (jup_b41_novikov_stand) нет. В чем может быть причина?
    Конфиг ножа:
    Сообщение отредактировал Ayer - Пятница, 22.05.2020, 23:29
      Злобная реклама
    Пятница, 22.05.2020, 23:29
    Статус:
    Сообщений: 666
    Регистрация: 22.05.2020
    Российская Федерация  Overfirst
    Пятница, 22.05.2020, 23:30 | Сообщение # 6957
    Статус:
    Бывалый:
    Сообщений: 1081
    Награды: 19
    Регистрация: 11.06.2015

    Цитата Kelvin ()
    А если так?

    Неа. smile
    Можно подробнее о том, что требуется сделать?
    Тут level.add_call сможет помочь, я думаю.
      Злобная реклама
    Пятница, 22.05.2020, 23:30
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  Kelvin
    Пятница, 22.05.2020, 23:36 | Сообщение # 6958
    Статус:
    Зевака:
    Сообщений: 19
    Награды: 0
    Регистрация: 17.05.2019

    Цитата Overfirst ()
    Можно подробнее о том, что требуется сделать?

    Есть место куда ГГ заходить нельзя чтобы люлей не получить, но если происходит выброс, то тогда можно туда заходить. И тут проблема сразу появляется. Если выброс закачивается глав герой сразу пулю получит потому что потому что по логике то время когда он может в данной зоне находится прошло. Вот хотел это при помощи скрипта сделать
      Злобная реклама
    Пятница, 22.05.2020, 23:36
    Статус:
    Сообщений: 666
    Регистрация: 17.05.2019
    Украина  molodoy_chelovek
    Суббота, 23.05.2020, 00:00 | Сообщение # 6959
    Статус:
    Новичок:
    Сообщений: 316
    Награды: 2
    Регистрация: 14.07.2019

    Kelvin, а on_timer чем не подходит? После Выброса запускаем таймер, и по истечению времени переходим на схему в которой игрок погибнет, находясь этой зоне. Как пример.
    Сообщение отредактировал molodoy_chelovek - Суббота, 23.05.2020, 00:01
      Злобная реклама
    Суббота, 23.05.2020, 00:00
    Статус:
    Сообщений: 666
    Регистрация: 14.07.2019
    Украина  AziatkaVictor
    Суббота, 23.05.2020, 00:01 | Сообщение # 6960
    Статус:
    Опытный:
    Сообщений: 1313
    Награды: 4
    Регистрация: 30.08.2018

    makdm, не совсем, у меня добавлен лут у мутантов. Когда ты наводишь на мертвого мутанта то появляется надпись, мол "Собрать лут (F)". Вообщем мод "Мясника".
    Я хотел сделать проверку, что для разделки нужен нож. Я это сделал, все работает как надо, но я хотел изменить надпись, мол "Достаньте нож чтобы разделать", если в руках его нет. Но так получилось, что надпись определяется при смерти мутанта, то есть, когда умирает мутант, то ему присваивается надпись, в зависимости от того, был ли в тот момент в руках нож или нет. Например, убил ножом надпись с лутом, убил с ТОЗа - надпись "Достаньте нож", и она уже никак не измениться. А мне надо чтобы проверка была как бы динамичной и проверяла наличие в руках ножа каждую секунду.
      Злобная реклама
    Суббота, 23.05.2020, 00:01
    Статус:
    Сообщений: 666
    Регистрация: 30.08.2018
    Поиск: