CoP. Спавн предметов — различия между версиями — S.T.A.L.K.E.R. Inside Wiki

CoP. Спавн предметов — различия между версиями

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

Перейти к: навигация, поиск
 
Строка 1: Строка 1:
 
Вот решил внести свой вклад в модостроение))
 
Вот решил внести свой вклад в модостроение))
 +
 
Тема которая будет расмотрена в данной статье, это спавн предметов в ЗП.
 
Тема которая будет расмотрена в данной статье, это спавн предметов в ЗП.
  
 
Для начала попробуем заспавнить что-нибудь……например…… О, вертолёт !!!!
 
Для начала попробуем заспавнить что-нибудь……например…… О, вертолёт !!!!
 +
 
Что для этого нам нужно ?
 
Что для этого нам нужно ?
1) ACDC для ЗП
 
2) Activeperl 8.7.
 
3) Распакованная игра (CoP)
 
  
                                Начнём
+
* ''1)ACDC для ЗП''
Поместим файл All.spawn(Который находится по адресу: Gamedata\spawns) в папку с ACDC. Распаковываем.
+
* ''2)Activeperl 8.7.''
 +
* ''3)Распакованная игра (CoP)
 +
''
 +
Начнём:
 +
 
 +
Поместим файл '''All.spawn'''(который находится по адресу: Gamedata\spawns) в папку с ACDC. Распаковываем.
 +
 
 
В итоге появятся Файлы .Ltx С названием секций. Нас интересуют Файлы alife_*******.ltx Так как они отвечают за спавн.
 
В итоге появятся Файлы .Ltx С названием секций. Нас интересуют Файлы alife_*******.ltx Так как они отвечают за спавн.
  
Для Начала нам нужно снять координаты того места Где должен появится наш Верталёт.
+
Для Начала нам нужно снять координаты того места Где должен появится наш вертолёт.
Для этого открываем ui_main_menu.script
+
 
находим вот примерно такое
+
Для этого открываем '''ui_main_menu.script''' и находим вот примерно такое:
 +
<lua>
 
if dik == DIK_keys.DIK_Q then
 
if dik == DIK_keys.DIK_Q then
 
self:OnMessageQuitWin()
 
self:OnMessageQuitWin()
 
end
 
end
 +
</lua>
 
и делаем так :
 
и делаем так :
 +
<lua>
 
if dik == DIK_keys.DIK_Q then
 
if dik == DIK_keys.DIK_Q then
self:OnMessageQuitWin()[[Изображение:Example.jpg]]
+
self:OnMessageQuitWin()
 
elseif dik==DIK_keys.DIK_W then
 
elseif dik==DIK_keys.DIK_W then
 
self:position_info()
 
self:position_info()
 
end
 
end
И в конец фаила.В Самый Конец!!!
+
</lua>
 +
[[Изображение:Example_vert.jpg]]
 +
 
 +
И в конец фаила. В Самый Конец!!!
 +
<lua>
 
function main_menu:position_info()
 
function main_menu:position_info()
 
local a = db.actor:position()
 
local a = db.actor:position()
Строка 32: Строка 44:
 
news_manager.send_tip(db.actor, text, nil, nil, 30000)
 
news_manager.send_tip(db.actor, text, nil, nil, 30000)
 
end
 
end
 +
</lua>
 
Сохраняем!!!
 
Сохраняем!!!
Заходим в игру ,добегаем до места где бы хотели чтобы сидел снайпер,выходим в Меню и в меню жмём на W , потом возвращаемся в игру
+
 
И Делаем скриншот (F12)
+
Заходим в игру, добегаем до места где бы хотели чтобы сидел снайпер,выходим в меню и жмём на W , потом возвращаемся в игру
 +
и делаем скриншот (F12)
  
 
Я выбрал место спавна прямо на палубе Скадовска.
 
Я выбрал место спавна прямо на палубе Скадовска.
  
всё теперь спавним ветралёт.
+
Всё теперь спавним вертолёт.
  
Выберем поправившуюся секцию. Для примера я взял Затон, поэтому октрываем alife_zaton.ltx.
+
Выберем поправившуюся секцию. Для примера я взял Затон, поэтому открываем '''alife_zaton.ltx'''
  
 
и добавляем :
 
и добавляем :
  
 +
<lua>
 
[1922]
 
[1922]
 
; cse_abstract properties
 
; cse_abstract properties
Строка 68: Строка 83:
 
startup_animation = idle
 
startup_animation = idle
 
engine_sound = vehicles\helicopter\helicopter
 
engine_sound = vehicles\helicopter\helicopter
 
+
</lua>
 
Помните !!!!! Всё должно быть по порядкку !!!!!Если перед этим номер скрипта был допустим [1921] то в номер нашего будет [1922]
 
Помните !!!!! Всё должно быть по порядкку !!!!!Если перед этим номер скрипта был допустим [1921] то в номер нашего будет [1922]
  
 
теперь с пояснениями:
 
теперь с пояснениями:
 +
<lua>
 
[1922]
 
[1922]
 
; cse_abstract properties
 
; cse_abstract properties
 
section_name = helicopter -- Имя секции
 
section_name = helicopter -- Имя секции
 
name = pri_a28_heli_1 -- Уникальное имя скрипта
 
name = pri_a28_heli_1 -- Уникальное имя скрипта
position = 154.740036,-2.654960,182.621597 -- координаты места где мы хотим чтобы появился верталёт
+
position = 154.740036,-2.654960,182.621597 -- координаты места где мы хотим чтобы появился вертолёт
 
direction = 0,-0.0252000000327826,0 -- поворот верталёта
 
direction = 0,-0.0252000000327826,0 -- поворот верталёта
  
Строка 86: Строка 102:
  
 
; cse_visual properties
 
; cse_visual properties
visual_name = dynamics\vehicles\mi24\veh_mi24_u_01 -- висуал верталёта
+
visual_name = dynamics\vehicles\mi24\veh_mi24_u_01 -- визуал верталёта
  
 
; cse_motion properties
 
; cse_motion properties
Строка 96: Строка 112:
 
startup_animation = idle
 
startup_animation = idle
 
engine_sound = vehicles\helicopter\helicopter
 
engine_sound = vehicles\helicopter\helicopter
 +
</lua>
 +
Всё вставляем скрипт в секцию (без комментов конечно)
  
Всё вставляем скрипт в секцию (без коментов конечно)
 
 
Сохраняем!
 
Сохраняем!
  
Строка 103: Строка 120:
  
 
[[Изображение:vertalet.jpg]]
 
[[Изображение:vertalet.jpg]]
 +
 +
 +
[[Категория:Скрипты]]

Версия 10:48, 8 апреля 2010

Вот решил внести свой вклад в модостроение))

Тема которая будет расмотрена в данной статье, это спавн предметов в ЗП.

Для начала попробуем заспавнить что-нибудь……например…… О, вертолёт !!!!

Что для этого нам нужно ?

  • 1)ACDC для ЗП
  • 2)Activeperl 8.7.
  • 3)Распакованная игра (CoP)

Начнём:

Поместим файл All.spawn(который находится по адресу: Gamedata\spawns) в папку с ACDC. Распаковываем.

В итоге появятся Файлы .Ltx С названием секций. Нас интересуют Файлы alife_*******.ltx Так как они отвечают за спавн.

Для Начала нам нужно снять координаты того места Где должен появится наш вертолёт.

Для этого открываем ui_main_menu.script и находим вот примерно такое:

 
if dik == DIK_keys.DIK_Q then
self:OnMessageQuitWin()
end
 

и делаем так :

 
if dik == DIK_keys.DIK_Q then
self:OnMessageQuitWin()
elseif dik==DIK_keys.DIK_W then
self:position_info()
end
 

Файл:Example vert.jpg

И в конец фаила. В Самый Конец!!!

 
function main_menu:position_info()
local a = db.actor:position()
local vid = db.actor:level_vertex_id()
local gvid = db.actor:game_vertex_id()
local text = "GPS:\\nX= "..a.x.."\\nY= "..a.y.."\\nZ= "..a.z.."\\nlevel_vertex= "..vid.."\\ngame_vertex_id= "..gvid
news_manager.send_tip(db.actor, text, nil, nil, 30000)
end
 

Сохраняем!!!

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

Я выбрал место спавна прямо на палубе Скадовска.

Всё теперь спавним вертолёт.

Выберем поправившуюся секцию. Для примера я взял Затон, поэтому открываем alife_zaton.ltx

и добавляем :

 
[1922]
; cse_abstract properties
section_name = helicopter
name = pri_a28_heli_1
position = 154.740036,-2.654960,182.621597
direction = 0,-0.0252000000327826,0
 
; cse_alife_object properties
game_vertex_id = 316
distance = 0
level_vertex_id = 1216486
object_flags = 0xffffffb2
 
; cse_visual properties
visual_name = dynamics\vehicles\mi24\veh_mi24_u_01
 
; cse_motion properties
 
; cse_ph_skeleton properties
skeleton_name = idle
 
; cse_alife_helicopter properties
startup_animation = idle
engine_sound = vehicles\helicopter\helicopter
 

Помните !!!!! Всё должно быть по порядкку !!!!!Если перед этим номер скрипта был допустим [1921] то в номер нашего будет [1922]

теперь с пояснениями:

 
[1922]
; cse_abstract properties
section_name = helicopter -- Имя секции
name = pri_a28_heli_1 -- Уникальное имя скрипта
position = 154.740036,-2.654960,182.621597 -- координаты места где мы хотим чтобы появился вертолёт
direction = 0,-0.0252000000327826,0 -- поворот верталёта
 
; cse_alife_object properties
game_vertex_id = 316 -- гейм вертекс уровня
distance = 0
level_vertex_id = 1216486 -- Левел уровень
object_flags = 0xffffffb2
 
; cse_visual properties
visual_name = dynamics\vehicles\mi24\veh_mi24_u_01 -- визуал верталёта
 
; cse_motion properties
 
; cse_ph_skeleton properties
skeleton_name = idle
 
; cse_alife_helicopter properties
startup_animation = idle
engine_sound = vehicles\helicopter\helicopter
 

Всё вставляем скрипт в секцию (без комментов конечно)

Сохраняем!

Вот что должно получится:

Vertalet.jpg

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