Добавление вертолета - охранника — различия между версиями — S.T.A.L.K.E.R. Inside Wiki

Добавление вертолета - охранника — различия между версиями

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

Перейти к: навигация, поиск
(Новая страница: «Итак, здесь я постараюсь описать создание вертолета, который будет защищать определенное ...»)
 
(<<< aka_sektor)
 
(не показана 1 промежуточная версия 1 участника)
Строка 6: Строка 6:
  
 
- первый охватывает непосредственно охраняемую територию и выдает инфопоршень при входе(и забирает на выходе).
 
- первый охватывает непосредственно охраняемую територию и выдает инфопоршень при входе(и забирает на выходе).
 +
 
- второй реагирует в той же зоне на смерть сталкеров от руки актера.
 
- второй реагирует в той же зоне на смерть сталкеров от руки актера.
 +
 
- третий увеличиваем примерно метров на 70 и как и в первом ставим выдачу инфопоршня
 
- третий увеличиваем примерно метров на 70 и как и в первом ставим выдачу инфопоршня
  
Строка 20: Строка 22:
 
В конец добавляем -
 
В конец добавляем -
  
[845] --- здесь я изначально ставил что-то вроде [999001] просто указывая уникальное число, ACDC при сборке исправляет
+
[845] '''--- здесь я изначально ставил что-то вроде [999001] просто указывая уникальное число, ACDC при сборке исправляет'''
; cse_abstract properties
+
; cse_abstract properties
section_name = helicopter  -- указываем что спавним вертолет ))))
+
section_name = helicopter  '''-- указываем что спавним вертолет ))))'''
name = esc_heli -- имя любое
+
name = esc_heli '''-- имя любое'''
position = -291.357299804688,-10.1593112945557,-607.471862792969 - координаты
+
position = -291.357299804688,-10.1593112945557,-607.471862792969 '''- координаты'''
direction = 0,-1.47526597976685,0
+
direction = 0,-1.47526597976685,0  
 
+
; cse_alife_object properties
+
game_vertex_id = 11 -- гейм вертекс
+
distance = 0
+
level_vertex_id = 117174 -- левел вертекс
+
object_flags = 0xfffffffa
+
custom_data = <<END
+
[logic]
+
cfg = scripts\esc_heli.ltx -- файл логики
+
END
+
story_id = 9905 -- вписывайте уникальное число (story_id своеобразный идентификатор)
+
 
+
; cse_visual properties
+
visual_name = physics\vehicles\mi24\veh_mi24_u_01 -- модель
+
 
+
; cse_motion properties
+
 
+
; cse_ph_skeleton properties
+
skeleton_name = idle
+
 
+
; cse_alife_helicopter properties
+
cse_alife_helicopter__unk1_sz = idle
+
engine_sound = alexmx\helicopter -- звук движка
+
 
+
 
+
 
+
[846]
+
; cse_abstract properties
+
section_name = space_restrictor -- спавним space_restrictor (реагирует на  актера)
+
name = sr_actor_on_blockpost -- имя любое
+
position = -154.810028076172,-29.5479907989502,-372.554779052734 - координаты
+
direction = 0,0,0
+
 
+
; cse_alife_object properties
+
game_vertex_id = 15 -- гейм вертекс
+
distance = 0
+
level_vertex_id = 94834 -- левел вертекс
+
object_flags = 0xffffff3e
+
custom_data = <<END
+
[logic]
+
active = sr_idle
+
 
   
 
   
[sr_idle]
+
; cse_alife_object properties
on_actor_inside = %+actor_on_blockpost% sr_idle@inside -- на входе даем инфопоршень  
+
game_vertex_id = 11 '''-- гейм вертекс'''
 
+
distance = 0
[sr_idle@inside]
+
level_vertex_id = 117174 '''-- левел вертекс'''
on_actor_outside = %-actor_on_blockpost% sr_idle -- на выходе забираем инфопоршень
+
object_flags = 0xfffffffa
END
+
custom_data = <<END
 
+
[logic]
; cse_shape properties
+
cfg = scripts\esc_heli.ltx '''-- файл логики'''
shapes = shape0
+
END
shape0:type = sphere -- тип space_restrictor сфера
+
story_id = 9905 '''-- вписывайте уникальное число (story_id своеобразный идентификатор)'''
shape0:offset = 0,0,0
+
shape0:radius = 70 -- радиус сферы
+
; cse_visual properties
 
+
visual_name = physics\vehicles\mi24\veh_mi24_u_01 '''-- модель'''
; cse_alife_space_restrictor properties
+
restrictor_type = 3
+
; cse_motion properties
 
+
 
+
; cse_ph_skeleton properties
 
+
skeleton_name = idle
 
+
[847]
+
; cse_alife_helicopter properties
; cse_abstract properties
+
cse_alife_helicopter__unk1_sz = idle
section_name = space_restrictor
+
engine_sound = alexmx\helicopter '''-- звук движка'''
name = sr_actor_kill_someone
+
position = -154.810028076172,-29.5479907989502,-372.554779052734
+
direction = 0,0,0
+
 
+
[846]
; cse_alife_object properties
+
; cse_abstract properties
game_vertex_id = 15
+
section_name = space_restrictor '''-- спавним space_restrictor (реагирует на  актера)'''
distance = 0
+
name = sr_actor_on_blockpost '''-- имя любое'''
level_vertex_id = 94834
+
position = -154.810028076172,-29.5479907989502,-372.554779052734 '''- координаты'''
object_flags = 0xffffff3e
+
direction = 0,0,0
custom_data = <<END
+
[logic]
+
; cse_alife_object properties
active = sr_territory
+
game_vertex_id = 15 '''-- гейм вертекс'''
 +
distance = 0
 +
level_vertex_id = 94834 '''-- левел вертекс'''
 +
object_flags = 0xffffff3e
 +
custom_data = <<END
 +
[logic]
 +
active = sr_idle
 +
 
 +
[sr_idle]
 +
on_actor_inside = %+actor_on_blockpost% sr_idle@inside '''-- на входе даем инфопоршень'''
 +
 +
[sr_idle@inside]
 +
on_actor_outside = %-actor_on_blockpost% sr_idle '''-- на выходе забираем инфопоршень'''
 +
END
 +
 +
; cse_shape properties
 +
shapes = shape0
 +
shape0:type = sphere '''-- тип space_restrictor сфера'''
 +
shape0:offset = 0,0,0
 +
shape0:radius = 70 '''-- радиус сферы'''
 +
 +
; cse_alife_space_restrictor properties
 +
restrictor_type = 3
 +
 +
 +
 +
 +
[847]
 +
; cse_abstract properties
 +
section_name = space_restrictor
 +
name = sr_actor_kill_someone
 +
position = -154.810028076172,-29.5479907989502,-372.554779052734
 +
direction = 0,0,0
 +
 
 +
; cse_alife_object properties
 +
game_vertex_id = 15
 +
distance = 0
 +
level_vertex_id = 94834
 +
object_flags = 0xffffff3e
 +
custom_data = <<END
 +
[logic]
 +
active = sr_territory
 +
 
 +
[sr_territory]
 +
territory_death = nil %+actor_kill_someone_blockpost% '''-- на убийство даем инфу'''
 +
END
 +
 +
; cse_shape properties
 +
shapes = shape0
 +
shape0:type = sphere
 +
shape0:offset = 0,0,0
 +
shape0:radius = 70
 +
 +
; cse_alife_space_restrictor properties
 +
restrictor_type = 3
 +
 +
 +
[848]
 +
; cse_abstract properties
 +
section_name = space_restrictor
 +
name = sr_actor_escaped_from_blockpost
 +
position = -154.810028076172,-29.5479907989502,-372.554779052734
 +
direction = 0,0,0
 +
 +
; cse_alife_object properties
 +
game_vertex_id = 15
 +
distance = 0
 +
level_vertex_id = 94834
 +
object_flags = 0xffffff3e
 +
custom_data = <<END
 +
[logic]
 +
active = sr_idle
 +
 
 +
[sr_idle]
 +
on_actor_outside = %+actor_escaped_from_blockpost% sr_idle@inside
 +
 +
[sr_idle@inside]
 +
on_actor_inside = %-actor_escaped_from_blockpost% sr_idle
 +
END
 +
 +
; cse_shape properties
 +
shapes = shape0
 +
shape0:type = sphere
 +
shape0:offset = 0,0,0
 +
shape0:radius = 150
 +
 +
; cse_alife_space_restrictor properties
 +
restrictor_type = 3
 
   
 
   
[sr_territory]
 
territory_death = nil %+actor_kill_someone_blockpost% -- на убийство даем инфу
 
END
 
 
; cse_shape properties
 
shapes = shape0
 
shape0:type = sphere
 
shape0:offset = 0,0,0
 
shape0:radius = 70
 
 
; cse_alife_space_restrictor properties
 
restrictor_type = 3
 
 
 
[848]
 
; cse_abstract properties
 
section_name = space_restrictor
 
name = sr_actor_escaped_from_blockpost
 
position = -154.810028076172,-29.5479907989502,-372.554779052734
 
direction = 0,0,0
 
 
; cse_alife_object properties
 
game_vertex_id = 15
 
distance = 0
 
level_vertex_id = 94834
 
object_flags = 0xffffff3e
 
custom_data = <<END
 
[logic]
 
active = sr_idle
 
 
   
 
   
[sr_idle]
 
on_actor_outside = %+actor_escaped_from_blockpost% sr_idle@inside
 
 
[sr_idle@inside]
 
on_actor_inside = %-actor_escaped_from_blockpost% sr_idle
 
END
 
 
; cse_shape properties
 
shapes = shape0
 
shape0:type = sphere
 
shape0:offset = 0,0,0
 
shape0:radius = 150
 
 
; cse_alife_space_restrictor properties
 
restrictor_type = 3
 
 
 
 
ВНИМАНИЕ если вставляеете себе мой текст, удалите коментарии иначе почти наверняка получите вылет
 
ВНИМАНИЕ если вставляеете себе мой текст, удалите коментарии иначе почти наверняка получите вылет
  
Строка 161: Строка 163:
  
 
Админы, просьба подождать, я закончу статью в ближайшее время
 
Админы, просьба подождать, я закончу статью в ближайшее время
 +
RIOTER(c)
 +
[[Категория:Неоформленные статьи]]

Текущая версия на 01:06, 20 марта 2014

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

Основа такова - создается вертолет в невидимой части локации (я создавал через ACDC - распаковщик all.spawn), логику обязательно выносим в config/scripts.

Создаем 3 space restrictor'а -

- первый охватывает непосредственно охраняемую територию и выдает инфопоршень при входе(и забирает на выходе).

- второй реагирует в той же зоне на смерть сталкеров от руки актера.

- третий увеличиваем примерно метров на 70 и как и в первом ставим выдачу инфопоршня

Итого первый сообщает о входе на охраняемую територию, второй сообщает о убийстве на этой територии, а третий мы делаем для того чтобы узнать когда актер пытается убежать(далее опишу как)

Я делал охрану южного военного блокпоста и вот что у меня вышло -


файл alife_l01_escape

В конец добавляем -

[845] --- здесь я изначально ставил что-то вроде [999001] просто указывая уникальное число, ACDC при сборке исправляет
; cse_abstract properties
section_name = helicopter  -- указываем что спавним вертолет ))))
name = esc_heli -- имя любое
position = -291.357299804688,-10.1593112945557,-607.471862792969 - координаты
direction = 0,-1.47526597976685,0 

; cse_alife_object properties
game_vertex_id = 11 -- гейм вертекс
distance = 0
level_vertex_id = 117174 -- левел вертекс
object_flags = 0xfffffffa
custom_data = <<END
[logic]
cfg = scripts\esc_heli.ltx -- файл логики
END
story_id = 9905 -- вписывайте уникальное число (story_id своеобразный идентификатор)

; cse_visual properties
visual_name = physics\vehicles\mi24\veh_mi24_u_01 -- модель

; cse_motion properties

; cse_ph_skeleton properties
skeleton_name = idle

; cse_alife_helicopter properties
cse_alife_helicopter__unk1_sz = idle
engine_sound = alexmx\helicopter -- звук движка



[846]
; cse_abstract properties
section_name = space_restrictor -- спавним space_restrictor (реагирует на  актера)
name = sr_actor_on_blockpost -- имя любое
position = -154.810028076172,-29.5479907989502,-372.554779052734 - координаты
direction = 0,0,0

; cse_alife_object properties
game_vertex_id = 15 -- гейм вертекс
distance = 0
level_vertex_id = 94834 -- левел вертекс
object_flags = 0xffffff3e
custom_data = <<END
[logic]
active = sr_idle
 
[sr_idle]
on_actor_inside = %+actor_on_blockpost% sr_idle@inside -- на входе даем инфопоршень 

[sr_idle@inside]
on_actor_outside = %-actor_on_blockpost% sr_idle -- на выходе забираем инфопоршень
END

; cse_shape properties
shapes = shape0
shape0:type = sphere -- тип space_restrictor сфера
shape0:offset = 0,0,0
shape0:radius = 70 -- радиус сферы 

; cse_alife_space_restrictor properties
restrictor_type = 3




[847]
; cse_abstract properties
section_name = space_restrictor
name = sr_actor_kill_someone
position = -154.810028076172,-29.5479907989502,-372.554779052734
direction = 0,0,0
 
; cse_alife_object properties
game_vertex_id = 15
distance = 0
level_vertex_id = 94834
object_flags = 0xffffff3e
custom_data = <<END
[logic]
active = sr_territory
 
[sr_territory]
territory_death = nil %+actor_kill_someone_blockpost% -- на убийство даем инфу
END

; cse_shape properties
shapes = shape0
shape0:type = sphere
shape0:offset = 0,0,0
shape0:radius = 70

; cse_alife_space_restrictor properties
restrictor_type = 3


[848]
; cse_abstract properties
section_name = space_restrictor
name = sr_actor_escaped_from_blockpost
position = -154.810028076172,-29.5479907989502,-372.554779052734
direction = 0,0,0

; cse_alife_object properties
game_vertex_id = 15
distance = 0
level_vertex_id = 94834
object_flags = 0xffffff3e
custom_data = <<END
[logic]
active = sr_idle
 
[sr_idle]
on_actor_outside = %+actor_escaped_from_blockpost% sr_idle@inside

[sr_idle@inside]
on_actor_inside = %-actor_escaped_from_blockpost% sr_idle
END

; cse_shape properties
shapes = shape0
shape0:type = sphere
shape0:offset = 0,0,0
shape0:radius = 150

; cse_alife_space_restrictor properties
restrictor_type = 3


ВНИМАНИЕ если вставляеете себе мой текст, удалите коментарии иначе почти наверняка получите вылет





Админы, просьба подождать, я закончу статью в ближайшее время RIOTER(c)

Другие места
LANGUAGE