Спавнить через скрипт у меня не получилось не знаю почему ниже приведу пример чё и как делал. В основном я научился спавнить через all.spawn . Ну примерно вот так.
[10001]
; cse_abstract properties
section_name = helicopter
name = esc_heli_55555
position = 57.8794326782227,-0.705963671207428,114.27214050293
direction = 0,-1.47526597976685,0
; cse_alife_object properties
game_vertex_id = 94
distance = 0
level_vertex_id = 345092
object_flags = 0xfffffffa
custom_data = <
[logic]
cfg = scripts\vertol.ltx
END
; cse_visual properties
visual_name = physics\vehicles\mi24\veh_mi24_u_01
; cse_motion properties
motion_name = helicopter\aaa.anm
; cse_ph_skeleton properties
skeleton_name = idle
; cse_alife_helicopter properties
cse_alife_helicopter__unk1_sz = idle
engine_sound = alexmx\helicopter
Вопрос так в чём моя проблема????? Проблема в том что я создал новую локацию(военную базу) и когда делаю таким способом как на ескейпе то получаю лог вот такого плана.
FATAL ERROR
[error]Expression : motion_ID.valid()
[error]Function : CKinematicsAnimated::ID_Cycle
[error]File : E:\stalker\patch_1_0004\xr_3da\SkeletonAnimated.cpp
[error]Line : 136
[error]Description : ! MODEL: can't find cycle:
[error]Arguments :
Думал что через скрипт может получится иначе какая военная база без вертолётов :-0. Но увы через скрипт у меня даже и на ескейпе не получилось. Посмотри чё не правильно поправ пожалоста. Достали они меня уже но столько сделал.
Файл назвал spawn.script. в него написал
function time ("helicopter",-227.68,-20.37,-156.92,27183,48,heli_test)
local obj = alife():create("helicopter",vector():set(posx,posy,posz),lvid,gvid)
local packet = net_packet()
obj:STATE_Write(packet)
-- свойства cse_alife_object
local game_vertex_id = packet:r_u16()
local cse_alife_object__unk1_f32 = packet:r_float()
local cse_alife_object__unk2_s32 = packet:r_s32()
local level_vertex_id = packet:r_s32()
local object_flags = packet:r_s32()
local custom_data = packet:r_stringZ()
local story_id = packet:r_s32()
local cse_alife_object__unk3_s32 = packet:r_s32()
-- свойства cse_visual
local model_visual = packet:r_stringZ()
local cse_visual__unk1_u8 = packet:r_u8()
-- свойства cse_motion
local motion_name = packet:r_stringZ()
-- свойства cse_ph_skeleton
local skeleton_name = packet:r_stringZ()
local cse_ph_skeleton__unk1_u8 = packet:r_u8()
local cse_ph_skeleton__unk2_u16 = packet:r_u16()
-- свойства cse_alife_helicopter
local cse_alife_helicopter__unk1_sz = packet:r_stringZ()
local engine_sound = packet:r_stringZ()
--устанавливаем логику
custom_data = "[logic]\ncfg = scripts\\heli\\"..logic..".ltx"
-- теперь заполняем нужные параметры
-- свойства cse_alife_object
packet:w_begin(game_vertex_id)
packet:w_float(cse_alife_object__unk1_f32)
packet:w_s32(cse_alife_object__unk2_s32)
packet:w_s32(level_vertex_id)
object_flags = bit_not(5) -- ~5 = 0xfffffffa
packet:w_s32(object_flags)
packet:w_stringZ(custom_data)
packet:w_s32(-1)
packet:w_s32(cse_alife_object__unk3_s32)
-- свойства cse_visual
packet:w_stringZ(model_visual)
packet:w_u8(cse_visual__unk1_u8)
-- свойства cse_motion
packet:w_stringZ(motion_name)
-- свойства cse_ph_skeleton
skeleton_name = "idle"
packet:w_stringZ(skeleton_name)
packet:w_u8(cse_ph_skeleton__unk1_u8)
packet:w_u16(cse_ph_skeleton__unk2_u16)
-- свойства cse_alife_helicopter
cse_alife_helicopter__unk1_sz = "idle"
engine_sound = "alexmx\\helicopter"
packet:w_stringZ(cse_alife_helicopter__unk1_sz)
packet:w_stringZ(engine_sound)
-- считываем скорректированные параметры
packet:r_seek(0)
obj:STATE_Read(packet, packet:w_tell())
return obj
end
Вызов фунции прицепил к диалогу где то так
spawn.time
Очень надеюсь что ты поможеш!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!