Случайная подборка модов
Упавшая звезда. Честь наемника
4.2
Хроники Кайдана
3.6
Большая Зона
3.4
Soc Style Addon 2.0
4.1
Lost Alpha DC
3.9
Krovosos mod v. 3.8
4.0
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Модератор форума: 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
    Российская Федерация  zhenya4342
    Суббота, 28.07.2018, 18:03 | Сообщение # 1621
    Статус:
    Отмычка:
    Сообщений: 108
    Награды: 0
    Регистрация: 08.10.2017

    Khyzyr, не обязательно задание, + нужно, чтобы если состояние 80 и более процентов - техник сам смог сделать
    от 60 до 80 - без набора #1 не смог сделать
    от 40 до 60 - без набора #1 и #2
    и т.д., проверку на состояние я сделаю - а вот на самого техника не знаю как
    можно реализовать так на таких инфопоршнях - инфопоршень "может делать при состоянии от 60 до 80", "от 40 до 60" и т.д., но опять же - всё упирается в проверку на техника
    Сообщение отредактировал zhenya4342 - Суббота, 28.07.2018, 18:05
      Злобная реклама
    Суббота, 28.07.2018, 18:03
    Статус:
    Сообщений: 666
    Регистрация: 08.10.2017
    Российская Федерация  Khyzyr
    Суббота, 28.07.2018, 18:05 | Сообщение # 1622
    Статус:
    Неопытный:
    Сообщений: 452
    Награды: 5
    Регистрация: 19.06.2017

    zhenya4342, А вместо elseif level.name == "zaton" пробовали указать id техника?
      Злобная реклама
    Суббота, 28.07.2018, 18:05
    Статус:
    Сообщений: 666
    Регистрация: 19.06.2017
    Российская Федерация  zhenya4342
    Суббота, 28.07.2018, 18:06 | Сообщение # 1623
    Статус:
    Отмычка:
    Сообщений: 108
    Награды: 0
    Регистрация: 08.10.2017

    Khyzyr, повторяю третий раз - я не знаю, как сделать проверку на непися (техника), поэтому ясен фиг не пробовал, ибо не знаю как
    не вместо "zaton" же писать айди техника
      Злобная реклама
    Суббота, 28.07.2018, 18:06
    Статус:
    Сообщений: 666
    Регистрация: 08.10.2017
    Российская Федерация  Khyzyr
    Суббота, 28.07.2018, 18:14 | Сообщение # 1624
    Статус:
    Неопытный:
    Сообщений: 452
    Награды: 5
    Регистрация: 19.06.2017

    zhenya4342, Проверяй
    Код
    elseif (type(npc.id) == "number"
      Злобная реклама
    Суббота, 28.07.2018, 18:14
    Статус:
    Сообщений: 666
    Регистрация: 19.06.2017
    Российская Федерация  zhenya4342
    Суббота, 28.07.2018, 18:15 | Сообщение # 1625
    Статус:
    Отмычка:
    Сообщений: 108
    Награды: 0
    Регистрация: 08.10.2017

    Khyzyr, это то, что мне нужно было, спасибо, пойду проверять smile
      Злобная реклама
    Суббота, 28.07.2018, 18:15
    Статус:
    Сообщений: 666
    Регистрация: 08.10.2017
    Российская Федерация  Khyzyr
    Суббота, 28.07.2018, 18:19 | Сообщение # 1626
    Статус:
    Неопытный:
    Сообщений: 452
    Награды: 5
    Регистрация: 19.06.2017

    zhenya4342, Странный ты все равно человек, усложняешь. По функции: чекай xr_conditions функция function is_alive.
      Злобная реклама
    Суббота, 28.07.2018, 18:19
    Статус:
    Сообщений: 666
    Регистрация: 19.06.2017
    Российская Федерация  zhenya4342
    Суббота, 28.07.2018, 18:23 | Сообщение # 1627
    Статус:
    Отмычка:
    Сообщений: 108
    Награды: 0
    Регистрация: 08.10.2017

    Khyzyr, biggrin
    насчёт твоего скрипта (по нажатию на кнопку "ремонт"):

    пробовал
    Код
    elseif type(npc.id) == "jup_b217_stalker_tech" then

    и
    Код
    elseif (type(npc.id) == "jup_b217_stalker_tech") then

    ну а с твоим
    Код
    elseif (type(npc.id) == "jup_b217_stalker_tech" then

    игра и вовсе не загружается, орёт на синтаксис
    Сообщение отредактировал zhenya4342 - Суббота, 28.07.2018, 18:23
      Злобная реклама
    Суббота, 28.07.2018, 18:23
    Статус:
    Сообщений: 666
    Регистрация: 08.10.2017
    Российская Федерация  yobakun
    Суббота, 28.07.2018, 18:42 | Сообщение # 1628
    Статус:
    Новичок:
    Сообщений: 270
    Награды: 5
    Регистрация: 30.07.2016

    zhenya4342, потому что id и story id это разные вещи. А вообще тебе нужен файл configs\misc\stalkers_upgrade_info.ltx
    Сообщение отредактировал yobakun - Суббота, 28.07.2018, 18:42
      Злобная реклама
    Суббота, 28.07.2018, 18:42
    Статус:
    Сообщений: 666
    Регистрация: 30.07.2016
    Российская Федерация  zhenya4342
    Суббота, 28.07.2018, 18:48 | Сообщение # 1629
    Статус:
    Отмычка:
    Сообщений: 108
    Награды: 0
    Регистрация: 08.10.2017

    yobakun, порылся в нём, но не нашёл ничего связанного с ремонтом, поподробнее можно?

    Добавлено (28.07.2018, 19:22)
    ---------------------------------------------
    Проблема решена таким скриптом:
    Код

    function question_repair_item( item_name, item_condition, can, mechanic ) --( string, float, bool, string )
        local price = how_much_repair( item_name, item_condition )
        if(item_name=="pri_a17_gauss_rifle") then
      return false
        elseif db.actor:money() < price then
      return false
        elseif mechanic=="zat_a2_stalker_mechanic" then
      return true
        else
      return false
        end
    end

    выявил решение опытным путём - переменная mechanic возвращает айди техника, поэтому нужно было всего лишь использовать её для проверки biggrin (можете не говорить, что я глупенький)

    Добавлено (28.07.2018, 19:33)
    ---------------------------------------------
    Ну и проверку на поршни добавил, если кому интересно:

    Код
    function can_repair_item( item_name, item_condition, mechanic ) --( string, float, string )
        local price = how_much_repair( item_name, item_condition )
        if(item_name=="pri_a17_gauss_rifle") then
      return false
        elseif db.actor:money() < price then
      return false
        elseif mechanic=="zat_a2_stalker_mechanic" then
      if has_alife_info("zat_b3_tech_instrument_1_brought") then
       return true
      else
       return false
      end
        elseif mechanic=="jup_b217_stalker_tech" then
      if has_alife_info("jup_b217_tech_instrument_1_brought") then
       return true
      else
       return false
      end
        end
    end
    Сообщение отредактировал zhenya4342 - Суббота, 28.07.2018, 19:33
      Злобная реклама
    Суббота, 28.07.2018, 18:48
    Статус:
    Сообщений: 666
    Регистрация: 08.10.2017
    Российская Федерация  svo6o9a
    Суббота, 28.07.2018, 21:50 | Сообщение # 1630
    Статус:
    Новичок:
    Сообщений: 236
    Награды: 2
    Регистрация: 19.11.2017

    Использую эту функцию, как проверку на деньги у гг, нашел тут.

    Использую в диалоге

    Но вылетает при попытке диалога.
      Злобная реклама
    Суббота, 28.07.2018, 21:50
    Статус:
    Сообщений: 666
    Регистрация: 19.11.2017
    Российская Федерация  sergej5500
    Суббота, 28.07.2018, 22:30 | Сообщение # 1631
    Статус:
    Новичок:
    Сообщений: 290
    Награды: 4
    Регистрация: 09.01.2017

    Цитата svo6o9a ()
    Но вылетает при попытке диалога.


    И где лог вылета?
      Злобная реклама
    Суббота, 28.07.2018, 22:30
    Статус:
    Сообщений: 666
    Регистрация: 09.01.2017
    Российская Федерация  svo6o9a
    Суббота, 28.07.2018, 22:40 | Сообщение # 1632
    Статус:
    Новичок:
    Сообщений: 236
    Награды: 2
    Регистрация: 19.11.2017

    Цитата sergej5500 ()
    И где лог вылета?

    Ну моя ошибка, забыл что то, вот
      Злобная реклама
    Суббота, 28.07.2018, 22:40
    Статус:
    Сообщений: 666
    Регистрация: 19.11.2017
    Российская Федерация  sergej5500
    Суббота, 28.07.2018, 23:10 | Сообщение # 1633
    Статус:
    Новичок:
    Сообщений: 290
    Награды: 4
    Регистрация: 09.01.2017

    svo6o9a,

    Разрабы применяли для проверки денег такой код.

    function zat_b30_actor_has_1000(first_speaker, second_speaker)
    return db.actor:money() >= 1000
    end

    У вас

    function название функции()
    return db.actor:money()>=10000
    end

    нет first_speaker, second_speaker

    Возможно, причина в этом
      Злобная реклама
    Суббота, 28.07.2018, 23:10
    Статус:
    Сообщений: 666
    Регистрация: 09.01.2017
    Российская Федерация  Overfirst
    Суббота, 28.07.2018, 23:26 | Сообщение # 1634
    Статус:
    Бывалый:
    Сообщений: 1081
    Награды: 19
    Регистрация: 11.06.2015

    Цитата sergej5500 ()
    нет first_speaker, second_speaker

    Возможно, причина в этом

    Нет, не в этом.
      Злобная реклама
    Суббота, 28.07.2018, 23:26
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  sergej5500
    Суббота, 28.07.2018, 23:28 | Сообщение # 1635
    Статус:
    Новичок:
    Сообщений: 290
    Награды: 4
    Регистрация: 09.01.2017

    Цитата Overfirst ()
    Нет, не в этом.


    Тогда нужен весь диалог и все функции. Где то ошибка.
      Злобная реклама
    Суббота, 28.07.2018, 23:28
    Статус:
    Сообщений: 666
    Регистрация: 09.01.2017
    Поиск: