Случайная подборка модов
Путь Человека
4.0
Вектор Отчуждения
4.2
Nature Winter v2.0 «Квантовый скачок»
4.0
Oblivion Lost 3.0
3.0
Поиск (DIES IRAE)
4.1
Вариант "Омега"
4.0
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  Wolfstalker
Понедельник, 22.10.2012, 14:58 | Сообщение # 1
Статус:
Легенда:
Сообщений: 2258
Награды: 15
Регистрация: 05.04.2010

В данной теме вы можете задавать любые вопросы касательно S.T.A.L.K.E.R. моддинга.

  • Не флудить
  • Предварительно просматривайте раздел. Ответ на ваш вопрос может быть там.
  • В своем вопросе указывайте платформу моддинга - Тень Чернобыля, Чистое небо или Зов Припяти.





    У кого есть желание, создать FAQ по основным вопросам моддинга - обращаемся в ЛС.


    Архив

    Архив#2
  •   Злобная реклама
    Понедельник, 22.10.2012, 14:58
    Статус:
    Сообщений: 666
    Регистрация: 05.04.2010
    Российская Федерация  BeeRsek
    Вторник, 09.07.2013, 08:16 | Сообщение # 6541
    Тайна Зоны: История Стрелка
    Статус:
    Опытный:
    Сообщений: 1308
    Награды: 7
    Регистрация: 24.01.2011

    что можно вписать в логику рестриктора, чтобы при входе туда игрок погибал?
      Злобная реклама
    Вторник, 09.07.2013, 08:16
    Статус:
    Сообщений: 666
    Регистрация: 24.01.2011
    Украина  BozKurt
    Вторник, 09.07.2013, 10:05 | Сообщение # 6542
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    BeeRsek,
    Код
    on_info = %=kill%
      Злобная реклама
    Вторник, 09.07.2013, 10:05
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  antonnkz76
    Вторник, 09.07.2013, 10:21 | Сообщение # 6543
    5 лет в Зоне
    Статус:
    Опытный:
    Сообщений: 2342
    Награды: 9
    Регистрация: 26.02.2012

    Правильно ли написан скрипт?(не ругать, ибо писал почти ничего не зная о скриптах)
    local health = 1-db.actor.health
    function medic_help()
    if db.actor then
    db.actor.health + health
    end
    end
      Злобная реклама
    Вторник, 09.07.2013, 10:21
    Статус:
    Сообщений: 666
    Регистрация: 26.02.2012
    Российская Федерация  Scouser
    Вторник, 09.07.2013, 10:29 | Сообщение # 6544
    Статус:
    Опытный:
    Сообщений: 1614
    Награды: 16
    Регистрация: 21.10.2012

    antonnkz76, Верно, получается, ты просто восстанавливаешь здоровье на максимум? И ещё, локальную переменную называй в самой функции.
      Злобная реклама
    Вторник, 09.07.2013, 10:29
    Статус:
    Сообщений: 666
    Регистрация: 21.10.2012
    Российская Федерация  antonnkz76
    Вторник, 09.07.2013, 10:31 | Сообщение # 6545
    5 лет в Зоне
    Статус:
    Опытный:
    Сообщений: 2342
    Награды: 9
    Регистрация: 26.02.2012

    LaRento, спасибо, то есть так?
    function medic_help()
    local health = 1-db.actor.health
    if db.actor then
    db.actor.health + health
    end
    end
      Злобная реклама
    Вторник, 09.07.2013, 10:31
    Статус:
    Сообщений: 666
    Регистрация: 26.02.2012
    Российская Федерация  Scouser
    Вторник, 09.07.2013, 10:34 | Сообщение # 6546
    Статус:
    Опытный:
    Сообщений: 1614
    Награды: 16
    Регистрация: 21.10.2012

      Злобная реклама
    Вторник, 09.07.2013, 10:34
    Статус:
    Сообщений: 666
    Регистрация: 21.10.2012
    Украина  FantomICW
    Вторник, 09.07.2013, 10:51 | Сообщение # 6547
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    Streels, ну, я не скриптер, но в этой направленности что-то да знаю. Основы как минимум. Простейшие функции + опыт + запоминаю или записываю полезности, увиденные на форуме wink
      Злобная реклама
    Вторник, 09.07.2013, 10:51
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Украина  BozKurt
    Вторник, 09.07.2013, 11:08 | Сообщение # 6548
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    Цитата (antonnkz76)
    Правильно ли написан скрипт?
    Нет.
    Сообщение отредактировал ColR_iT - Вторник, 09.07.2013, 11:12
      Злобная реклама
    Вторник, 09.07.2013, 11:08
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  Scouser
    Вторник, 09.07.2013, 11:15 | Сообщение # 6549
    Статус:
    Опытный:
    Сообщений: 1614
    Награды: 16
    Регистрация: 21.10.2012

    Цитата (ColR_iT)
    Нет.

    Не стоит словами говорить, давай сразу выкладывай, что не так smile

    А что там может быть неверного? назначаем локальную переменную, которая обозначает разность между 1 и кол-вом здоровье , выраженного десятичной дробью. А далее просто складываем текущее здоровье с тем значением.

    Добавлено (09.07.2013, 11:15)
    ---------------------------------------------
    Вот верно. Что-то я не увидел ошибку сразу...
    Код
    function medic_help()
    local health = 1-db.actor.health
    if db.actor then
    db.actor.health = db.actor.health + health
    end
    end
    Сообщение отредактировал LaRento - Вторник, 09.07.2013, 11:15
      Злобная реклама
    Вторник, 09.07.2013, 11:15
    Статус:
    Сообщений: 666
    Регистрация: 21.10.2012
    Российская Федерация  satanian
    Вторник, 09.07.2013, 11:15 | Сообщение # 6550
    Статус:
    Новичок:
    Сообщений: 200
    Награды: 0
    Регистрация: 28.12.2011

    Как мне отослать сообщение Актору , да и еще и квест через него передать surprised
      Злобная реклама
    Вторник, 09.07.2013, 11:15
    Статус:
    Сообщений: 666
    Регистрация: 28.12.2011
    Украина  BozKurt
    Вторник, 09.07.2013, 11:16 | Сообщение # 6551
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    Цитата (LaRento)
    А далее просто складываем текущее здоровье с тем значением.
    Вот именно! Он просто сложил по сути два числа, а результат ничему не присвоил - движок не сможет это переварить.
      Злобная реклама
    Вторник, 09.07.2013, 11:16
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  Scouser
    Вторник, 09.07.2013, 11:23 | Сообщение # 6552
    Статус:
    Опытный:
    Сообщений: 1614
    Награды: 16
    Регистрация: 21.10.2012

    ColR_iT, Да, точно, извиняюсь тогда. Выше написал правильный вариант.

    satanian, Функция сообщения:
    Код
    function имя_функции (actor, npc)
               news_manager.send_tip(db.actor, "Здорова", nil, "stalker", 20000, nil)        
    db.actor:give_info_portion("инфопорция_носящаяя_квест")
    end


    Где:
    "Здорова" - текст или можно указать переменную текста
    из текстовых конфигов.
    stalker - имя иконки отправителя.
    20000 - время показа сообщения.
    Сообщение отредактировал LaRento - Вторник, 09.07.2013, 13:22
      Злобная реклама
    Вторник, 09.07.2013, 11:23
    Статус:
    Сообщений: 666
    Регистрация: 21.10.2012
    Украина  BozKurt
    Вторник, 09.07.2013, 11:29 | Сообщение # 6553
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    Цитата (LaRento)
    Вот верно.
    Тоже не совсем.
    В данном случае к имеющемуся здоровью ГГ будет добавлена единица, а не недостающая часть.
    В целом этого более чем достаточно, т.к. верхний порог здоровья ГГ ограничен единицой и восстановить полностью достаточно присвоить ему "один":
    Код
    db.actor = 1
    И совсем не обязательно высчитывать разницу.
    Но если уж совсем так хочется, то нужно вот так:
    Код
    function medic_help()
         if db.actor then
             db.actor.health = 1 - db.actor.health
         end
    end
    Сообщение отредактировал ColR_iT - Вторник, 09.07.2013, 11:29
      Злобная реклама
    Вторник, 09.07.2013, 11:29
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  Scouser
    Вторник, 09.07.2013, 11:33 | Сообщение # 6554
    Статус:
    Опытный:
    Сообщений: 1614
    Награды: 16
    Регистрация: 21.10.2012

    ColR_iT, Тогда вообщем теряется смысл функции smile
    А по его желанию, как я понял, он хочет после потери здоровья добавить его же избыток и вернуться прежнее кол-во хп.
    Сообщение отредактировал LaRento - Вторник, 09.07.2013, 11:34
      Злобная реклама
    Вторник, 09.07.2013, 11:33
    Статус:
    Сообщений: 666
    Регистрация: 21.10.2012
    Российская Федерация  satanian
    Вторник, 09.07.2013, 11:38 | Сообщение # 6555
    Статус:
    Новичок:
    Сообщений: 200
    Награды: 0
    Регистрация: 28.12.2011

    И еще , квест на "Установка прибора (ТЧ) " - делается почти также как и принести-отнести , или нет ?
    вот из ЗП :
    function jup_b209_place_scanner(actor, npc)
    if xr_conditions.actor_in_zone(actor, npc, {"jup_b209_hypotheses"}) then
    scenario_autosave(db.actor, nil, {"st_save_jup_b209_placed_mutant_scanner"})
    db.actor:give_info_portion("jup_b209_scanner_placed")
    remove_item(actor, npc, {"jup_b209_monster_scanner"})
    spawn_object(actor, nil, {"jup_b209_ph_scanner","jup_b209_scanner_place_point"})
    end
    end
    Сообщение отредактировал satanian - Вторник, 09.07.2013, 11:40
      Злобная реклама
    Вторник, 09.07.2013, 11:38
    Статус:
    Сообщений: 666
    Регистрация: 28.12.2011
    Поиск: