Лучшая модификация месяца
Всего ответов: 202
Главная » Статьи » Сталкер Зов Припяти » Уроки по модостроению

Спавн аномалий с рандомной позицией

function spawn_anom(anom_name,plosh,position,level_vertex_id,game_vertex_id,powers_a,time_danger os)

   local obj = alife():create(anom_name,position,level_vertex_id,game_vertex_id)
   local pac = net_packet()
   obj:STATE_Write(pac)
   local game_vertex_id = pac:r_u16()
   local distance = pac:r_float()
   local direction = pac:r_u32()
   local level_vertex_id = pac:r_u32()
   local object_flags = pac:r_s32()
   local custom_data = pac:r_stringZ()
   local story_id = pac:r_s32()
   local spawn_story_id = pac:r_s32()
   local shape_count = pac:r_u8()
   for i=1,shape_count do
       local shape_type = pac:r_u8()
       if shape_type == 0 then
           local center = pac:r_vec3()
           local plosh = pac:r_float()
       else
           local box = pac:r_matrix()
       end
   end
   local restrikror_type = pac:r_u8()
   local powers = pac:r_float()
   local owner_id = pac:r_s32()
   local on_off_mode_enabled_time = pac:r_u32()
   local on_off_mode_disabled_time = pac:r_u32()
   local on_off_mode_shift_time = pac:r_u32()
   local offline_interactive_radius = pac:r_float()
   local artefact_spawn_places_count = pac:r_u16()
   local artefact_position_offset = pac:r_s32()
   local last_spawn_time_present = pac:r_u8()
   if pac:r_elapsed()~= 0 then 
       abort("left=%d",pac:r_elapsed())
   end
   pac:w_begin(game_vertex_id)
   pac:w_float(distance)
   pac:w_u32(direction)
   pac:w_u32(level_vertex_id)
   pac:w_u32(object_flags)
   pac:w_stringZ(custom_data)
   pac:w_s32(story_id)
   pac:w_s32(spawn_story_id)
   pac:w_u8(1)
   pac:w_u8(0)
   local sphere_center = vector()
   sphere_center:set(0,0,0)
   pac:w_vec3(sphere_center)
   pac:w_float(plosh)
   pac:w_u8(restrikror_type)
   if powers_a ~= nil then 
       powers = powers_a 
   end
   pac:w_float(powers)
   if time_dangeros == nil then 
       owner_id = bit_not(0) 
   else 
       owner_id = time_dangeros 
   end
   pac:w_u32(owner_id)
   pac:w_u32(on_off_mode_enabled_time)
   pac:w_u32(on_off_mode_disabled_time)
   pac:w_u32(on_off_mode_shift_time)
   pac:w_float(offline_interactive_radius)
   pac:w_u16(artefact_spawn_places_count)
   pac:w_u32(artefact_position_offset)
   pac:w_u8(last_spawn_time_present)
   pac:r_seek(0)
   obj:STATE_Read(pac,pac:w_tell())
return obj
end


Категория: Уроки по модостроению | Добавил: Блэк☭ (03.12.2015)
Просмотров: 209 | Теги: сталкер, уроки по модостроению, зов Припяти, STALKER, аномалий, спавн, позицией, call of Pripyat, с рандомной | Рейтинг: 5.0/1
Всего комментариев: 0
Внимание! Прочтите для ознакомления!
Правила написания коментария: В комментариях запрещено - Писать сообщение прописными буквами (Caps Lock). Рекламировать какие-либо сайты. Использовать более двух смайлов в одном комментарии. Оскорблять пользователей сайта. Выражаться некультурными словами. Комментарии, в которых содержатся предложения по обмену баннерами, лишние вопросы, или просто не несущие никакого смысла будут незамедлительно удаляться, а пользователи, написавшие их, будут строго наказаны.

avatar
Приветствую, Гость!

-Ну что,Бродяга?
Мне тебе мозги парить,как я со всеми новичками делаю,или с тобой как с опытным сталкером обращатся?


-Давай как с новичком..

-Давай как с опытным!!!
Рейтинг@Mail.ru
Онлайн всего: 1
Бродяг: 1
Сталкеров: 0

[ Сегодняшние посетители ]