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

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

@dPlayer, использовать метод give_talk_message.

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

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

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

function mess()
    local mess = "text"
    db.actor:give_talk_message(mess)
end
Изменено пользователем dPlayer
Ссылка на комментарий

Правда, какой-нито простой примерчик с give_talk_message посмотреть бы...
 

Сталкер - наше всё!

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

Совсем обленились...

Ну для начала можно было тут прочитать

Если мало, вот пример...

function Custom_Caption(cap, st, use_icon)
--вызов дополнительного сообщения
    local icon_tip = use_icon or "ui_iconsTotal_esc_blockpost_case_to_trader"
    local task_texture, task_rect = get_texture_info(icon_tip)
    local stl = "iconed_trade_info"
    if st then stl = st end
    db.actor:give_talk_message(cap, task_texture, task_rect, stl)
end

Вот такая функция принимает на входе 3 аргумента.

1) текст, что написать

2) (необязательно) шаблон вывода из XML файла "config\ui\talk.xml" или "config\ui\talk_16.xml". Если не указан, ставит iconed_trade_info по умолчанию.

3) (необязательно) выводимая текстура. Если не указано, то берет текстуру ui_iconsTotal_esc_blockpost_case_to_trader
 

  • Спасибо 1
  • Нравится 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

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

Как получить текущий параметр итема в слоте в виде числа? Сравнивать этот параметр с числом получается без проблем:

function s1_precondition()
	local item_in_slot_1 = db.actor:item_in_slot(1)
	if item_in_slot_1:condition() < 0.3 then 
		return true
	else 
		return false
	end	
end

А попытка его получить приводить к вылету:

function s1_precondition()
    local item_in_slot_1 = db.actor:item_in_slot(1)
    if item_in_slot_1:condition() ~= nil then
        local item_in_slot_cond = item_in_slot_1:condition
    else
        return false
    end
end
Изменено пользователем dPlayer
Ссылка на комментарий

Добавил спальный мешок в Тень Чернобыля 1.0004 ( добавлял так, как написано в этой статье). но теперь ГГ сам по себе время от времени засыпает. Иногда даже во время боя. Как это исправить, подскажите пожалуйста. 

 

SoC. Спальный мешок.txt

Pir%40t%40s.gif

Ссылка на комментарий
@KURT2013, урок вполне рабочий. Если все сделать по нему, то ГГ в принципе не сможет сам по себе или случайно засыпать, т.к. сон включается только через GUI.
  • Согласен 1

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

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

@dPlayer

local item_in_slot_cond = item_in_slot_1:condition 

тут тоже скобки нужны, т.е. так:

local item_in_slot_cond = item_in_slot_1:condition()

Изменено пользователем UnLoaded
  • Спасибо 1
Ссылка на комментарий

Всем привет. Нужна помощь в таком вопросе: -  Есть нпс заспавненный через альспавн, его здоровье равно - (upd:health = 0.100000001490116). Есть ли способ его вылечить, не давая ему аптечку через диалог! Например с помощью какой нибудь функции... Игра тч 04 чистая. За ранее благодарен.

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

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

GTA 3 MAP X-Ray | NFS U:2 MAP X-Ray | RTCW MAP X-Ray | L2D | Куча раритетных модов на моем облаке — на память о былом.

JNCR — Coming Soon...

i5-10400F / RAM 16GB / GTX 1660 Super / 1TB HDD+256GB SSDm2 / Win 11 PRO x64 / Samsung Curved 27" x2

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

Народ может все таки кто нибудь ответит, на пост выше? Как нпс(у) закинуть в рюкзак аптечку(с дальнейшим его исцелением), именно без диалога и выдачи( <action>dialogs.transfer_medkit</action>).. 

Изменено пользователем Х_и_м_и_к
Ссылка на комментарий
@HellRatz,в x-ray extensions есть функции генерации нажатий кнопок. Названий не помню.
  • Спасибо 1
  • Согласен 1
Ссылка на комментарий

@HellRatz, из X-Ray Extensions:

level.send_event_key_press(dik) - нажатие

level.send_event_key_release(dik) - отпускание

level.send_event_key_hold(dik) - удержание

dik - код клавиши из DIK_keys.

 

@Х_и_м_и_к, если надо просто прибавить здоровья, то нужно сначала получить game_object непися, а потом добавить ему хп. Например, по story_id.

local npc = level_object_by_sid(12345)
if npc then npc.health = 1 end
Изменено пользователем naxac
  • Спасибо 2
  • Согласен 1

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

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

 

 

если надо просто прибавить здоровья
Спасибо! То что доктор прописал... Именно это я и спрашивал...  :drinks:
Ссылка на комментарий
 naxac

А если не по СИДу, по профильному имени непися возможно произвести какие то действия с ним??? Или только СИД?

Жизнь следует измерять поступками, а не временем...

Ссылка на комментарий
@losiara, можно по имени в алл.спавне найти. Если по профилю, то перебирать всех онлайновых нпс и проверять у каждого character_name. Изменено пользователем naxac

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

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

naxacбез all.spawn, с использованием скриптового НПС.

через "spawn_sections.ltx" по типу:

[aes_monolit_1]:stalker
$spawn		=  "respawn\aes_monolit_1"
character_profile	= aes_monolit_1_master ; профиль сделан именно под этого НПС
spec_rank = master
community = monolith
custom_data = scripts\moy_logic\aes_monolit_1.ltx 

aes_monolit_1 - получаем его имя, спавним через него скриптом непися с отдельным профилем "aes_monolit_1_master

Вот как то так можно по имени с ним работать???

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

Жизнь следует измерять поступками, а не временем...

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

Спасайте! Скриптов вообще не знаю, но хочу адаптировать к моду CoC схему дин.аномалий из мода АМК. Вопрос - надо ли мне создавать отдельный скриптовый файл и копировать в него связанную с аномалиями байду из файла amk.scripts(как я понял, отвечающие за спавн аномалий функции)? И есть ли у кого-то в наличии схема из того же АМК, с помощью которой контроллер превращает нормальных сталкеров в зомбированных? Буду очень благодарен, если скинете ее. Ну и напоследок - ходят по всему интернету слухи, будто в АМК научили сталкеров обходить аномалии. Если скинете мне ее и объясните примерно, как с ней ведут себя сталкеры - век не забуду.

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

Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда...

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

@losiara, У тебя же написано

character_profile    = aes_monolit_1_master ; профиль сделан именно под этого НПС

 

Значит, можем делать так:

function L(profile_name)
   local a = 1
   while a < 65535 do
      local obj = level.object_by_id(a)
      if obj and IsStalker(obj) and obj:alive() and obj:profile_name() == profile_name then
         --// тут любые действия с найденным объектом
      end
   a = a + 1
   end
end

 

 

Можно вот так, по профилю.

Если надо обязательно по имени, то с этим проблем будет больше. При скриптовом спавне имя объекта - это его секция + его айди, т.е. будет что-то вроде такого "aes_monolit_123685" (после первой единицы любые цифры, какие - заранее неизвестно). Айди заранее неизвестен - его только при спавне можно узнать. Если позаботиться о его сохранении где-то, то в принципе можно, но и то работать будет только до тех пор пока нпс никуда не делся.

 

 

 

Скриптов вообще не знаю, но хочу адаптировать к моду CoC схему дин.аномалий из мода АМК

Оптимистично...

Про контроллера смотреть bind_monster.script, насколько я помню.

  • Спасибо 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

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

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

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

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

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

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

Войти

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

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

AMK-Team.ru

×
×
  • Создать...