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

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


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

@Forser, да, может как-то (хз не знаю как) привязать это дело к получению задания "Убить Стрелка" ?

Изменено пользователем Kirgudu
Добавлено Kirgudu,

Пункт 2.0 Правил форума, сутки чтения.

RafMadMan.gif

Ссылка на комментарий
На <info_portion id="storyline_actor_start"> повесь актион. 

Еще можно на апдейт актора повесить. Заходишь в bind_stalker.script, ищешь строку function actor_binder:update(delta), и в этой ф-ии пишешь свою. Пример:

function actor_binder:update(delta)
скрипт.функция()
...

Всё.

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

Ранее был известен под ником BoBaH_671.

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

@BoBaH_671, лол, рафмэдмэну советую тогда там сразу несколько вложенных циклов на перебор всех объектов сделать, чтобы сразу ощущалась вся соль твоего совета.

  • Нравится 1
  • Согласен 2
Ссылка на комментарий
и сколько же раз он заспавнит тогда? 

Тада еще подробнее... Можно сделать, чтобы функция выполнялась, если у актора нет определенного поршня. Если его нет, то выполняем функцию и пусть в ней будет выдан этот самый поршень. Выходит, эта функция не будет повторно выполнена, пока у актора не будет задисаблен этот поршень. Так допёрло?

 

 

Ты сейчас такую ахинею несёшь.

Тут что-то неправильно написано? Ну-ка давай, поправь.

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

Ранее был известен под ником BoBaH_671.

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

 

 

Тут что-то неправильно написано?
Написано то правильно, но способ-то убогий. Для чего делать столько возни через биндер, когда можно просто накинуть актион на <info_portion id="storyline_actor_start">. Пожалей скрипты и нас своим способом. 
  • Нравится 2
  • Не нравится 1
Ссылка на комментарий

@Forser@RafMadMan, вы будете смеяться, но этот инфопоршень выдается на апдейте. Так что навесив функцию вы усугубите, незначительно, но что мешает прямо туда же вот зарядить что надо? Вот так у меня:


if not has_alife_info("storyline_actor_start") and level.name() == "l01_escape" then
actor:give_info_portion("storyline_actor_start")
_G.g_start_avi = true 
end

Куда вставлять свое думаю ясно.

 

Ссылка на комментарий
пожалей скрипты и нас своим способом. 

Это ты ахинею несешь. Вот наглядная функция:

function update()
if not has_alife_info("portion") then
amk.spawn_item_in_inv("wpn_fn2000")
db.actor:give_info_portion("portion")
end
end

По-моему всё правильно, ФНка заспавнится только один раз.

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

Ранее был известен под ником BoBaH_671.

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

Извините за довольно нубский вопрос, но все таки..

Как инициировать диалог от лица НПС? Что-то нужно в логике прописывать?  :russian_ru:

Ах да.. Где храниться текст типа "Сталкер это территория долга, любая попытка бла, бла, бла.."?

Изменено пользователем NL-Vincenz

NL-Vincenz.gif

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

Подскажите пожалуйста, каким образом заспавнить оружие с пустым магазином?

local sobj=sim:create(section,db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id(), db.actor:id())
local tbl=get_weapon_packet(sobj)
tbl.ammo_elapsed=0
tbl.updammo_elapsed=0
set_weapon_packet(tbl,sobj)

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

Благодарю!

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

Карлан, может я немного не понимаю...

sim:create возвращает серверный объект, а set_ammo_elapsed вызывается у клиентского объекта. 

local sobj=sim:create(section,db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id(), db.actor:id())

sobj:set_ammo_elapsed(0) приведет к вылету.

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

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

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

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

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

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

Войти

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

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

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