Спавн мертвого НПС без функций AMK — S.T.A.L.K.E.R. Inside Wiki

Спавн мертвого НПС без функций AMK

Материал из S.T.A.L.K.E.R. Inside Wiki

Перейти к: навигация, поиск

1 способ. Спавн НПС и убийство функцией

 
function spawn_killed_npc()
local se_obj = alife():create("секция спавна", vector():set(x, y, z), lvid, gvid) -- спавним и получаем серверный объект
level.add_call(
		function()
			if se_obj.online then 
			return true
			end
		end,
		function()
			level.object_by_id( se_obj.id ):kill( level.object_by_id( s_obj.id ) ) -- убиваем клиентский объект
 
                        -- отправляем сообщение о гибели сталкера
			news_manager.send_tip(db.actor, "Погиб сталкер, ЧАЭС, выброс", nil, nil, 30000)
		end
	)
end
 

НПС не становится нам врагом, а мгновенно погибает.

2 способ. Спавн НПС и нанесение хита (НПС станет врагом ГГ посмертно)

 
function spawn_killed_npc()
        local npc = alife():create("секция спавна", vector():set(x, y, z), lvid, gvid)
        level.add_call(
		function()
			if s_obj.online then 
			return true
			end
		end,
		function()
			local h = hit()
			h.direction = vector():set( 1, 0, 0 )
			h.impulse = 0
			h.draftsman = db.actor
			h.power = 100
			h.type = hit.telepatic
			level.object_by_id( s_obj.id ):hit(h)
 
                        -- без хитов shock и wound NPC не умрет
			h.power = 100
			h.type = hit.shock
			level.object_by_id( s_obj.id ):hit(h)
			h.power = 100
			h.type = hit.wound
			level.object_by_id( s_obj.id ):hit(h)
 
			news_manager.send_tip(db.actor, "Погиб сталкер, пси-атака", nil, nil, 30000)
		end
	)
end
 
Другие места
LANGUAGE