Перейти к контенту

[SoC] Ковыряемся в файлах


Рекомендуемые сообщения

Добавь неписю такую логику

[logic]
active = remark1

[remark1]
anim = wait
on_info = {+my_info} remark2
combat_ignore_cond = always

[remark2]
anim = binocular
combat_ignore_cond = always

сталк будет стоять и ничего не делать, кады выдаш инфопоршень my_info - начнет глядеть в бинокль

118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105
Ссылка на комментарий

когда мораль падает до уровня panic_threshold неписи начинают орать типа: не стреляй я без оружия, а монстряки

сваливают. Небось сам замечал: нападает стая собак, гавкают, кусают, перебиваешь всех, остаётся одна - скулит и валит куды подальше :D

118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105
Ссылка на комментарий

Gonarh, а для гг есть эффекты?

И туда же: у НПС есть psy_health - так вот какие нибудь эффекты оно имеет?И когда изменяется?Я в свое время заставлял пить вотку,когда ее мало,но они пили 1 раз - при загрузке игры.

Изменено пользователем Monnoroch
Ссылка на комментарий

конечно, вот допустим мне дать литра три пива - у мну мораль знаешь как поднимется :lol3:

а по сабжу - нет

у НПС есть psy_health - так вот какие нибудь эффекты оно имеет?И когда изменяется?

не знаю, не интересовался :unsure:

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105
Ссылка на комментарий

требуется помощь:

как исправить в файлах отношение Химеры в НЗ чтобы получить инфу о реагентах,шмаляет без разговоров.Успел заранее с ним поругаться:)

по шпаргалке ничего путного не нашел.

переигрывать очень далеко.

 

Строгое предупреждение от модератора n6260
Набирая текст не забывайте о заглавных буквах и пробелах.

 

Сообщение от модератора n6260
Изменить вручную отношения ГГ и той группировки к которой относится Химера. Файл "гейм_репортишен" по пути gamedata\config\creatures.
Изменено пользователем n6260

4030796.gif

Ссылка на комментарий

Еще один вопрос: как спаунить динамические источники звука? Я через алл.спавн заспавнил приеник (как в зп в заставке када у вояк на базе в Припяти) вот его логика

[logic]
active = ph_sound1

[ph_sound1]
snd = prapor_music

брал логику из солянки у приемника Прапора. Спаунил xrSpawnerом. Музыку клал в sounds\characters_voice\scenario\prapor_music.

Изменено пользователем кровоSTALKER
Ссылка на комментарий

Давно не задавал глупых вопросов:

1.Как избавиться от эффекта снежки при нападении собак?

2.Можно ли арту задать свойства увеличения переносимого веса?

Заранее спасибо!

Мои работы ТЫЦ

Ссылка на комментарий

Gonarh , Monnoroch

Требуется еще ваша помощь.

Понимаю что функция под спойлером может показаться на ваш взгляд переусложненной (нежели ваши варианты) но вот захотелось мне именно так сделать.

В общем там проблема с чтением элементов таблиц четвертого уровня - в текст метки выводится только по одному итемсу у каждого непися - то есть получается читается не все что должно читаться.

то что там закомментировано это попытка создать счетчик вещей (пока видимо неудачная) и удалить повторяющиеся по секции итемсы.

 

урезанный вариант функции для вывода инфы о всех онлайн NPC - выводится только имя и инвентарь.

 

function inventory_npc()

local str = ""
--local flag 
    for k, v in pairs (db.storage) do
        local npc = level.object_by_id(k)
        if npc and IsStalker(npc) then
           -- local count = 0
            db.storage[k].inventory = {}
            npc:iterate_inventory(function (tmp, item)
            local invName = game.translate_string(this.get_inv_name(item:section()))
            --flag = true
            --for k, vv in pairs(db.storage[k].inventory) do
                --if vv.sec == invName then
                    --vv.count = vv.count+1
                    --table.remove(db.storage[k].inventory, vv.sec)    
                    --flag =false
                  -- break
                --end
            --end
                --if flag then 
                   table.insert(db.storage[k].inventory, {item_id=item:id(), sec =item:section(), inv=invName, count=1})    
                --end
            end,npc)
        local id = npc:id()
        local name = level.object_by_id(id)
        for i=1, #db.storage[npc:id()].inventory do   --введение допол. цикла для чтения всех таблиц ничего не дало
        
         for k, data in pairs(db.storage[npc:id()].inventory) do
        local text_inv = "\\nинвентарь:".."\\n"..data.inv
        local text_count = " ["..tostring(data.count).."]"
        str = name:character_name()..text_inv..text_count.."\\n"
                    level.map_add_object_spot(id, "alife_presentation_smart_ready", str)
             end
      end
  end
end
end

 

когда я делал трехуровневую таблицу - там все итемсы выводились как надо - но полным списком - если у непися 20 пачек патронов - то все 20 пачек построчно и выводились - хотелось бы избавиться от этого, чтобы было только имя предмета и его кол-во.

 

 

 

Изменено пользователем Garry_Galler
Ссылка на комментарий
function inventory_npc()
  local general_table = {}
  for k, v in pairs (db.storage) do
    local npc = level.object_by_id(k)
    if npc and IsStalker(npc) then
      local tbl_inv = {}
      npc:iterate_inventory(
        function (tmp, item)
          if tbl_inv[item:section()] 
          then tbl_inv[item:section()] = tbl_inv[item:section()] + 1
             else table.insert(tbl_inv, item:section()) end
        end,
      npc)
      table.insert(general_table, {npc:id(), tbl_inv})
    end
  end
  for i, data in pairs (general_table) do
    local npc_obj = level.object_by_id(data[1])
    if npc_obj and IsStalker(npc_obj) then
      local str
      for j, item in pairs (data[2]) do 
        if str == nil then str = "" end
        str = str .. string.format("\\n%s=%d", item ,j)
      end
      if str then level.map_add_object_spot(npc_obj.id, "alife_presentation_smart_ready", str) end
    end
  end
all_spawn.showmessage("done")
end

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105
Ссылка на комментарий

Gonarh

Спасибо.

Но это мою проблему до конца не решает - ты же видишь - у меня СВОЙ код и нужно решить проблему именно этого кода, а ты просто предлагаешь свой вариант.

как сделать по другому (попроще) - я примерно знаю. Но мне нужно именно так как у меня. С таблицей внутри db.storage - и со всеми теми полями которые у меня там есть. Мне нужно понять почему не читаются все элементы из таблицы (не поняв это - я не смогу работать с многоуровневыми таблицами).

Ссылка на комментарий
Мне нужно понять почему не читаются все элементы из таблицы (не поняв это - я не смогу работать с многоуровневыми таблицами).

гоу курить маны

118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105
Ссылка на комментарий

Подскажите, где износ оружия поковырять можно. Я имею в виду износ оружия у НПС. Заранее СПАСИБО!!))

Изменено пользователем Nightmare666999
Ссылка на комментарий

Т.Е. износ всего оружия из лута я могу таким образом поминять(у всех нпс)? Или износ чисто в инвенторе(у меченого)? Возможно я не особо корректно задал вопрос... Мне нужно исправить износ у др. нпс...

 

ДА

 

Строгое предупреждение от модератора n6260
1. Не пишим подобные посты с одним "да", "нет" и им подобное.

2. "капсом" не пишем.

 

Спасибо за совет.

 

Строгое предупреждение от модератора n6260
И "спасибы" тоже не пишем отдельными постами.

Итог: Три нарушения - рин одли на сутки.

Ссылка на комментарий

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

118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105
Ссылка на комментарий

это давно реализовано во многих модах, внимательно рассмотри работу дефменеджера,

скрипт death_manager.script конкретнее функция keep_item

118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105
Ссылка на комментарий

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

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...