Перейти к содержанию

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

 
 

DeadlyLoko В хелпе прилагающемся к ACDC есть инструкция по этому поводу. Как вносить правки в конфиг или же как заставить ACDC сканировать конфиг мода в поисках соответсвия секций и классов.


Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Как восстановить прежнее положение гитары в руках?
Установил мод AI Additions, и мне не нравится, что положение гитары в руках новое...
 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

liner В секции предмета есть параметры attach объекта их и нужно править.

  • Мастер! 1

Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Здравствуйте, как сделать, чтобы по нажатию на кнопку в GUI появлялась ещё одна? Изучил в КМБ урок по GUI, но так и не понял, где и как задавать функционал для кнопки

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Yura001 второй кнопке прописать w:Show(false), в первой при нажатии делать w:Show(true). Можно еще просто выключить-включить, а не скрывать w:Enable(true/false)

  • Спасибо 1

В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

vader_33 Спасибо, я это спрашивал, потому что пытаюсь закостылить одну задачу. Вы, как я понял, разбираетесь в интерфейсе, поэтому напишу вам вопрос. Мне надо сделать 2Д картинку за интерфейсом диалога. Вот в таком ключе, как на картинке(фон это 2Д изображение). Я просто костылю через бекграунд и кнопки, но это не очень удобно

 

Изменено пользователем Yura001
Удаляю картинку
  • Хабар 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Как создать бесконечный предмет? Объясняю. Мне нужно чтобы конкретный предмет, например, аптечка после использования не пропадала. Как такое реализовать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Всем привет! Написал функцию телепорта персонажа и непися, но во-первых не учитывается вектор направления, который я вроде как задавал в функции, и во-вторых телепортация по одной и той де функции происходит по разным местам. То есть и перс и непись не телепортируются в одну и ту же точку каждый раз, есть небольшой разброс. А мне надо, чтобы каждый раз телепортация происходила строжайше по моим координатам. Как такое сделать? Может, я неправильно ввожу функцию?

Спойлер

function tp_doroga(first_speaker, second_speaker)
    level.add_pp_effector ("123.ppe", 200, false)
    local end_of_timer = time_global() + 1000
    level.add_call(
                function()
                    if end_of_timer < time_global() then
                        return true
                    end
                end,
                function()
                    npc = get_story_object("SHIZA_story")
                    db.actor:set_actor_position(vector(-0.23343560099602,0,0.97237223386765):set(-129.26106262207,-0.16839237511158,-24.617595672607),3925,0)
                    npc:set_npc_position(vector(0.4362116754055,0,-0.89984405040741):set(-129.41885375977,-0.13657504320145,-23.355331420898),3927,0)

                end
                )

end

Спойлер

*******************************************************************
 Название точки : дорога перс
  Название уровня : l01
 GameVertex ID(вертекс игры): 0
 levelVertex ID(вертекс уровня): 3925
 Position(Позиция) = -129.26106262207,-0.16839237511158,-24.617595672607
 Direction(Поворот) = -0.23343560099602,0,0.97237223386765
 программа от сталкера 56 | 
*******************************************************************

*******************************************************************
 Название точки : дорога непись
  Название уровня : l01
 GameVertex ID(вертекс игры): 0
 levelVertex ID(вертекс уровня): 3927
 Position(Позиция) = -129.41885375977,-0.13657504320145,-23.355331420898
 Direction(Поворот) = 0.4362116754055,0,-0.89984405040741
 программа от сталкера 56 | 
*******************************************************************

 

Для определения координат пользовался прогой от сталкера 56 |

 

Изменено пользователем Stepan_sovok1917

294404326_-1.png.b174b8675b96f1eea9aed038584779b1.png

                    Паблик ВК       

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

vader_33 image.thumb.png.0df7cbe83235b64d21e37939532cf7f2.png

Я написал вот такие функции, чтобы первая кнопка после нажатия скрывалась, а вторая после нажатия закрывала GUI. Но первая кнопка вообще не видна, а если поменять местами функции и нажать на кнопку, то происходит вылет по причине attempt to index global 'w'

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 час назад, Крим сказал:

Как создать бесконечный предмет? Объясняю. Мне нужно чтобы конкретный предмет, например, аптечка после использования не пропадала. Как такое реализовать?

Как вариант, можешь прописать этой аптечке:
eat_portions_num = какое-нибудь_огромное_число
Или при использовании выдавать эту же аптечку. В gamedata\scripts создай скрипт, например: ui_use_item.script

function on_use_item(sect)       
    local actor = db.actor
    local item_name = sect:section()
      if item_name=="medkit" then
             give_object_to_actor("medkit")
         end
end


В _g добавить:

function give_object_to_actor(obj,count)       
          if count==nil then count=1 end       
          for i=1, count do       
              alife():create(obj,db.actor:position(),db.actor:level_vertex_id(),db.actor:game_vertex_id(),db.actor:id())       
          end       
end

В bind_stalker добавить в функцию actor_binder:use_inventory_item(obj)
 

    if obj~=nil then      
         ui_use_item.on_use_item(obj)      
         end

 


Дополнено 2 минуты спустя
30 минут назад, Stepan_sovok1917 сказал:

Как такое сделать? Может, я неправильно ввожу функцию?

А почему бы не воспользоваться готовыми функциями?
%=teleport_actor(позиция_way) =teleport_npc(ид_нпс:позиция_way)%


Дополнено 4 минуты спустя
9 минут назад, Yura001 сказал:

Я написал вот такие функции, чтобы первая кнопка после нажатия скрывалась, а вторая после нажатия закрывала GUI.

Изучаем основы GUI вот по этой ссылке

  • Спасибо 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Yura001 вместо w пишете то, что надо скрыть, w я для примера писал. Копируйте код под спойлер, скрины неудобно смотреть


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Добрый вечер, как прикрутить отключение партикла по поршню?
Пробовал такой метод, не работает
 

Спойлер

[logic]
active = sr_particle
 
[sr_particle]
name = new_effects\tuman_cherep  
path = lim_tuman_cherep_1_particle_point                  
mode = 2                 
looped = false  
on_signal = particle_end | sr_idle@2 
 
[sr_idle@2]    
on_info = {+мойпоршень} nil            

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Подскажите пожалуйста, как для квеста в функции проверки наличия предметов затребовать проверку у комбеза, что бы тот был не меньше 99% износа ? Чтобы изношеная не прокатывала !

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Как реализовать, чтобы у выбранного тобой техника весь ремонт стоил бесплатно, то есть 0 рублей?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 час назад, Крим сказал:

Как реализовать, чтобы у выбранного тобой техника весь ремонт стоил бесплатно, то есть 0 рублей?

В конфиге (gamedata\configs\misc\stalkers_upgrade_info) нужного техника пропиши:
discount_condlist = %=mech_discount(0.00)%


Дополнено 8 минуты спустя
7 часов назад, Hoperise сказал:

Пробовал такой метод, не работает

[sr_particle]
name = new_effects\tuman_cherep  
path = lim_tuman_cherep_1_particle_point                  
mode = 2                 
looped = false  
on_info = {+мойпоршень} sr_idle@nil
 
[sr_idle@nil]

 

  • Мастер! 1
  • Спасибо 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Kalambur

if object:condition() > 0.99 then
    ....
end

 

  • Спасибо 1

Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Во время проигрывания какой-то анимации (неизвестной) вылет:
Не заменял/добавлял .omf файлы. Движок OpenXRay

Спойлер


E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrCore.dll at 00007FFB4BE4BCAA shared_motions::motion_def() + 10 byte(s) in E:\OPENXRAY_REPOS\src\xrCore\Animation\SkeletonMotions.hpp line 308 + 10 byte(s)
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrRender_R2.dll at 00007FFB43D0FD07 CKinematicsAnimated::PlayCycle() + 55 byte(s) in E:\OPENXRAY_REPOS\src\Layers\xrRender\SkeletonAnimated.cpp line 418
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrGame.dll at 00007FFB42F623EA CStalkerAnimationPair::play() + 234 byte(s) in E:\OPENXRAY_REPOS\src\xrGame\stalker_animation_pair.cpp line 153
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrGame.dll at 00007FFB42F61D8E CStalkerAnimationManager::play_torso() + 446 byte(s) in E:\OPENXRAY_REPOS\src\xrGame\stalker_animation_manager_update.cpp line 170
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrGame.dll at 00007FFB42F62119 CStalkerAnimationManager::update_impl() + 393 byte(s) in E:\OPENXRAY_REPOS\src\xrGame\stalker_animation_manager_update.cpp line 217
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrGame.dll at 00007FFB42F622EE CStalkerAnimationManager::update() + 14 byte(s) in E:\OPENXRAY_REPOS\src\xrGame\stalker_animation_manager_update.cpp line 227 + 5 byte(s)
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrGame.dll at 00007FFB42C7F740 CCustomMonster::UpdatePositionAnimation() + 144 byte(s) in E:\OPENXRAY_REPOS\src\xrGame\CustomMonster.cpp line 581 + 68 byte(s)
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrGame.dll at 00007FFB42C7F533 CCustomMonster::UpdateCL() + 1331 byte(s) in E:\OPENXRAY_REPOS\src\xrGame\CustomMonster.cpp line 538
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrGame.dll at 00007FFB42BE3496 CAI_Stalker::UpdateCL() + 310 byte(s) in E:\OPENXRAY_REPOS\src\xrGame\Ai\Stalker\ai_stalker.cpp line 877
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.dll at 00007FFB4BDD18F2 CObjectList::SingleUpdate() + 130 byte(s) in E:\OPENXRAY_REPOS\src\xrEngine\xr_object_list.cpp line 149
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.dll at 00007FFB4BDD1CB7 CObjectList::Update() + 519 byte(s) in E:\OPENXRAY_REPOS\src\xrEngine\xr_object_list.cpp line 277 + 11 byte(s)
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.dll at 00007FFB4BDA1BB4 IGame_Level::OnFrame() + 20 byte(s) in E:\OPENXRAY_REPOS\src\xrEngine\IGame_Level.cpp line 179
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrGame.dll at 00007FFB42DA4054 CLevel::OnFrame() + 756 byte(s) in E:\OPENXRAY_REPOS\src\xrGame\Level.cpp line 475
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.dll at 00007FFB4BD81BD6 MessageRegistry<pureRender>::Process() + 94 byte(s) in E:\OPENXRAY_REPOS\src\xrEngine\pure.h line 97
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.dll at 00007FFB4BD81421 CRenderDevice::FrameMove() + 337 byte(s) in E:\OPENXRAY_REPOS\src\xrEngine\device.cpp line 546
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.dll at 00007FFB4BD80BCB CRenderDevice::ProcessFrame() + 75 byte(s) in E:\OPENXRAY_REPOS\src\xrEngine\device.cpp line 323
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.dll at 00007FFB4BD80ED4 CRenderDevice::message_loop() + 532 byte(s) in E:\OPENXRAY_REPOS\src\xrEngine\device.cpp line 448 + 8 byte(s)
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.dll at 00007FFB4BD81199 CRenderDevice::Run() + 569 byte(s) in E:\OPENXRAY_REPOS\src\xrEngine\device.cpp line 485
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.dll at 00007FFB4BDD5A9C Startup() + 1660 byte(s) in E:\OPENXRAY_REPOS\src\xrEngine\main.cpp line 311
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.dll at 00007FFB4BDD6024 RunApplication() + 772 byte(s) in E:\OPENXRAY_REPOS\src\xrEngine\main.cpp line 382
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.exe at 00007FF684CD132B entry_point() + 667 byte(s) in E:\OPENXRAY_REPOS\src\xr_3da\entry_point.cpp line 55 + 6 byte(s)
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.exe at 00007FF684CD13F4 WinMain() + 20 byte(s) in E:\OPENXRAY_REPOS\src\xr_3da\entry_point.cpp line 77 + 8 byte(s)
E:\S.T.A.L.K.E.R. Call of Pripyat\bin\xrEngine.exe at 00007FF684CD169E __scrt_common_main_seh() + 262 byte(s) in d:\agent\_work\63\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl line 288 + 33 byte(s)
C:\Windows\System32\KERNEL32.DLL at 00007FFB651B7974 BaseThreadInitThunk() + 20 byte(s)
C:\Windows\SYSTEM32\ntdll.dll at 00007FFB67FEA271 RtlUserThreadStart() + 33 byte(s)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Neptun не работает данная логика.
По статье настройки логики наткнулся на эту строчку 

Цитата

on_signal = particle_end | sr_idle@2

думается она и отключает партиклы, вот только слабо представляю куда можно подставить эту строчку.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Hoperise Эта строка партикл НЕ отключает, в ней прописана реакция, на то что партикл закончил проигрывание (имеет смысл для не зацикленного партикла).


Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

denis2000 возможно тогда имеет смысл переключение с зацикливания на единоразовое воспроизведение через поршень?
Проба такого рода 
 

Спойлер

[logic]
active = sr_particle
 
[sr_particle]
name = new_effects\tuman_cherep  
path = lim_tuman_cherep_2_particle_point                  
mode = 2                 
looped = false      
on_info = {+мой поршень} sr_particle1
 
[sr_particle1]
name = damage_fx\smoke 
path = lim_tuman_cherep_2_particle_point                  
mode = 2                 
looped = true     

Результат - партикл tuman_cherep  продолжает проигрывается. Поршень выдается.

Изменено пользователем Hoperise

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

можно ли убрать скайбоксы? Или есть скайбоксы для тумана? А то я настроил туман густой и вижу скайбоксы там, где через 10 метров будет холм.

  • Лайк 1

76561198152189716.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 час назад, Hoperise сказал:

Результат - партикл tuman_cherep  продолжает проигрывается. Поршень выдается.

Каждый партикл имеет длительность воспроизведения.

Даже если вы переключили секцию, то двигало продолжает отыгрывать запущенный ранее партикл, пока не истечет время его отыгрывания.

Для того, что вы хотите сделать существуют скрипты.

Запуск партикла

sobj_part_1 = particles_object( "anomaly2\\body_tear_00" )

sobj_part_1:play_at_pos( position )

Принудительная остановка проигрыша партикла:

if sobj_part_1:playing () then
             sobj_part_1:stop ()
    end

Вот от этого плясать нужно.

 

  • Мастер! 1

Терпение... И все получится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Спойлер

local smarts_by_no_assault_zones = {
                                    ["zat_a2_sr_no_assault"]     = "zat_stalker_base_smart",
                                    ["jup_a6_sr_no_assault"]     = "jup_a6",
                                    ["jup_b41_sr_no_assault"]     = "jup_b41",
                                    ["pri_b303_no_attack_restr"]     = "pri_b303",
                                    ["pri_sim_1_no_assault_restr"]     = "pri_sim_1",
                                    ["pri_b36_zombied_restrictor"]     = "pri_b36_smart_terrain"
}

Прописал зоны ненападения. Не работают. Различные мутанты и нпс все равно суются в эти зоны. Что делать? Как исправить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

makdm прошу прощенья, где можно данные примеры посмотреть в деле?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Здравствуйте! Где взять шаблон для загрузочного экрана уровня? (Разбитое окошко)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   2 пользователя онлайн