Николай ФеНиКс
Для начала нужна логика NPC который должен подойти к трупу. Труп нужно заспавнить скриптом -
функция для спавна трупа
local obj_id =0
function spawn_trup()
local obj = alife():create(name, позиция, левелветекс, геймвертекс)
obj_id = obj.id
obj:on_death()
end
--обе функции в один файл в - xr_effects
для удаления трупа (не проверял)
function del_trup()
local sobj = alife():object(obj_id)
if sobj then
alife():release(sobj,true)
end
end
Тебе нужно написать логику волкера для NPC, чтобы тот подошел на на позицию где будет лежать труп. НУ или просто заспавнить его прямо рядом с ним.
логика запуска функций и эффектов примерно такая:
начальная схема
[logic]
active = remark@base
[remark@base]
anim = любая нужная анимка
no_move = true
target = nil
meet = no_meet
on_timer = 5000|remark@doctor_wakeup ; через 5 сек переход к анимации склонения над телом
схема с действием
[remark@doctor_wakeup]
anim = doctor_wakeup; склоняемся над телом базарим всякую фигню
target = nil; лучше конечно целью сделать труп - но тогда нужен сид для него
on_timer = 15000|%=run_postprocess(deadcity_wake:1777:false)% ; запускаем маскировку
on_timer2 = 19000|%=del_trup% ; удаляем труп - через 4 сек - промежуток сам побери правильный
on_timer3= 20000|%=run_cam_effector(dream)% ; запускаем анимацию камеры
on_timer4 = 21000|%=stop_postprocess(1777)% ; останавливаем маскировку
в общем типа того.
добавлено спустя 9 минут
в общем все промежутки времени нужно синхронизировать с анимацией doctor_wakeup - сколько она длится я не помню. Поэтому выставил наугад.
отредактировал(а) erlik: 05-04-2010 19:21 GMT3 час. Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Знатоки скриптов помогите... как заспавнить любого непися скриптом?? ссылки на статьи другие не неадо писать... И еще вопрос у мя с персонажем фигня какая-то... как ему задать путь по которому н будет ходить??
добавлено спустя 5 минут
а то я через acdc двух сталкеров заспавнил и они начали ходить друг за другом и убегать на другие локи... Также еще вопрос если скриптами спавнить то можно как нить сделать так чтобы при старте игры сразу же спавнились все неписи а не через диалог?
отредактировал(а) Hunter6: 06-04-2010 00:09 GMT3 час. В моем журнале много статей, которые вас ДЕЙСТВИТЕЛЬНО обрадуют)
Я глава команды SU Team
На данный момент работаю над паком террейнов для ТЧ PTSHoC v 0.1
Николай ФеНиКс
ну вылет понятно из-за чего - трупа то нет . а вот почему он не спавнится не знаю - функция вроде верная - но проверю ее написание еще раз.
добавлено спустя 4 минут
так - проверил. эту функцию еще singapur22 выкладывал и проверялась она не раз local sobj = alife():create("stalker", position, level_vertex_id, game_vertex_id)
sobj:on_death()
как видишь написание метода убийства NPC сразу при спавне - правильное.
должна спавнить труп.
отредактировал(а) erlik: 06-04-2010 11:38 GMT3 час. Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
function spawn_trup()
local sobj = alife():create("trup", -251.54, -19.39,-130.75,9545,8) obj_id = obj.id
sobj:on_death()
end
чувак ты убиваешь, а айди чувака в переменную local obj_id=0 не пишется
надо не obj_id = obj.id
а obj_id = sobj.id раз уж ты переправил obj на sobj зачем то - разницы то никакой от замены одного имени на другое
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
function vistrel_v_cherep_2(actor, npc)
local snd_obj = sound_object([[Weapons\walther_shoot]])
if snd_obj ~= nil then
snd_obj:play_at_pos(db.actor, npc:position(), sound_object.s3d)
end
printf("_bp: vistrel_v_cherep_2: npc='%s'", npc:name())
local h = hit()
h.power = 1000
h.direction = vector_rotate_y(npc:direction(), 90)
h.bone = "bip01_head"
h.draftsman = npc
h.impulse = 200 --350
h.type = hit.wound
npc:hit(h)
end
function vistrel_v_cherep(actor, npc)
db.actor:set_task_state(task.fail, "val_suicide_find_lost_stalker", 0)
end
суть данной конструкции застрелить НПСа во время подхода ГГ ближе чем 5 метров...
а ничего не работает!=(
даже звук не воспроизводится
и даже оружие не появляется...
добавлено спустя 2 минут
XrKamp
хы ща проверим=):lol)
отредактировал(а) Николай ФеНиКс: 06-04-2010 17:59 GMT3 час.
function vistrel_v_cherep_2(actor, npc)
local snd_obj = sound_object([[Weapons\walther_shoot]])
if snd_obj ~= nil then
snd_obj:play_at_pos(db.actor, npc:position(), sound_object.s3d)
end
printf("_bp: vistrel_v_cherep_2: npc='%s'", npc:name())
local h = hit()
h.power = 1000
h.direction = vector_rotate_y(npc:direction(), 90)
h.bone = "bip01_head"
h.draftsman = npc
h.impulse = 200 --350
h.type = hit.wound
npc:hit(h)
end
function vistrel_v_cherep(actor, npc)
db.actor:set_task_state(task.fail, "val_suicide_find_lost_stalker", 0)
end
Люди помогите я не могу установить full_scale_icon,откуда его вообще брать что-бы добавить к иконкам,у меня в файле outfit.ltx описания костюмов например костюм новичка,и там написано full_scale_icon = 0,11 откуда берётся это число и вообще как новому костюму присвоить full_scale_icon подскажите плиз.
народ помогите!!!
добовлял новое оружие в игру, встретил такую ошибку...
Expression : !hud_snd.sounds.empty()
Function : HUD_SOUND::LoadSound
File : E:\stalker\sources\trunk\xr_3da\xrGame\HudSound.cpp
Line : 27
Description : there is no sounds for:
Arguments : wpn_c7a1
1)Люди помогите как сделать чтобы ГГ появлялся не у Сидоровича а на другой локации?(не через all.spawn)
2)Вопрос:вот где мне взять level_vertext_id и game_vertext_id локации MARSH?
Никак. Только в пределах активного лвла методом db.actor:set_actor_position(координаты без вертексов).
вот где мне взять level_vertext_id и game_vertext_id локации MARSH?
**50016ea8aab1bb10eeba**:level_vertex_id(), db.actor:game_vertex_id()
news_manager.send_tip(db.actor, "level_vertex = "..lvid.."\\ngame_vertex = "..gvid, 0, "default", 600000)
end[/code]
Вызывать - как хочешь. А лучше скачай скрипт от Сингапура - там все координаты показываются в реальном времени.
Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.