Ушёл с ресурса из-за занятости. Если что-то экстренное - пишите в ЛС: приду, посмотрю, отвечу. Полноправно вернуться в сообщество планирую после релиза второй части игры. ----------------------------------------------------------------- Всем удачи и не скучать.
SibireaStalker, да это тот мод, только качал с другого сайта. _Мороз, на 1.6.01 тоже не работает.
ADK TeaM ________________________________________________________ Наша команда испытывает дефицит новых идей. Нужна помощь! (Обращаться в ЛС) ________________________________________________________
Репутация: 269
Регистрация: 10.03.2012
Город: Таганрог, Архангельск
Цитата (SibireaStalker)
думаю, он говорит об одном и том же моде. Ссылка на материал
Скачал, посмотрел и откуда там динамические аномалии могут взяться не понял Увидел только несколько (больше десятка) на каждой локе новых аномалий и всё...
Kirk767, а ты сможешь сделать динам. аномалии? Я очень буду благодарен.
ADK TeaM ________________________________________________________ Наша команда испытывает дефицит новых идей. Нужна помощь! (Обращаться в ЛС) ________________________________________________________
Репутация: 269
Регистрация: 10.03.2012
Город: Таганрог, Архангельск
zed_1997, не пробовал, поэтому обещать не могу. Да и скриптеров много, к тому же я видел где то наработки по похожему вопросу. Постараюсь найти и поделиться ссылкой.
1) Подскажите пожалуйста логику НПСа который просто ходит, при приближении ГГ и при диалоге поворачивается к нему лицом, а после разговора опять идет. 2) Как полтергейсту убрать партиклы? (Хотя бы смерти)
ADK TeaM ________________________________________________________ Наша команда испытывает дефицит новых идей. Нужна помощь! (Обращаться в ЛС) ________________________________________________________
Сообщение отредактировал zed_1997 - Суббота, 16.02.2013, 20:50:19
local outfit_in_slot=db.actor:item_in_slot(7) if outfit_in_slot~=nil then --если голый валим отсюда, а не узнаём покрой пиджака if outfit_in_slot:section_name()=="чегототам" then end end
Вот у меня вопрос - можно ли сделать, чтобы "чегототам"применялось когда ГГ голый, а когда одет костюм то nil ?
ADK TeaM ________________________________________________________ Наша команда испытывает дефицит новых идей. Нужна помощь! (Обращаться в ЛС) ________________________________________________________
Сообщение отредактировал zed_1997 - Пятница, 22.02.2013, 16:29:19
zed_1997 local outfit_in_slot=db.actor:item_in_slot(7) if outfit_in_slot==nil then --голый что-то происходит else --одетый что-то другое происходит end
Успокойтесь и цельтесь хорошо. Вы сейчас убьёте человека...
Сообщение отредактировал Max_Warlock - Суббота, 23.02.2013, 17:08:50
Kirk767, Мы получаем клиентский объект используемого костюма, а дальше можно и секцию получить или ID
Код
local oOutfit = db.actor:get_current_outfit() --/ Получаем объект костюма на ГГ local ID = oOutfit:id() --/ Получаем ID костюма local section = oOutfit:section() --/ Получаем секцию костюма
Подскажите люди добрые, как сделать проверку на смерть определённого монстра, и если он умер, то убрать его труп.
ADK TeaM ________________________________________________________ Наша команда испытывает дефицит новых идей. Нужна помощь! (Обращаться в ЛС) ________________________________________________________
ADK TeaM ________________________________________________________ Наша команда испытывает дефицит новых идей. Нужна помощь! (Обращаться в ЛС) ________________________________________________________
Сообщение отредактировал zed_1997 - Среда, 27.02.2013, 19:36:44
zed_1997, Мне вот интересно, как ты писал логику своему монстру? Копипастом? Если бы ты подошел к этому вопросу серьезно, то сначала бы изучил основы этой логики, и тогда бы ты обратил внимание на секцию mob_death.
Изучай! и многие подобные вопросы у тебя отпадут сами собой.
function spawn_anom() local count = math.random(5,20) --выбираем кол-во заспавненых aномалий local section = anomal[math.random(table.getn(anomal))] -- выбираем аномалию local lv = math.random(level_vertexes[level.name()]["lvid"]) --выбираем левел вертекс local gv = level_vertexes[level.name()]["gvid"] --выбираем гэйм вертекс for ind = 1, count do this.create_anom(section, level.vertex_position(lv), lv, gv,3,1) end end
function create_anom(name_anom, posit_anom, lvid_anom, gvid_anom, radius_anom, power_anom) local obj = alife():create(name_anom, posit_anom, lvid_anom, gvid_anom) -----------------------write---------------------- local packet = net_packet() obj:STATE_Write(packet)
-------------------------load--------------------- -- cse_alife_object local game_vertex_id = packet:r_u16() local distance = packet:r_float() local direct_control = packet:r_u32() local level_vertex_id = packet:r_u32() local object_flags = packet:r_u32() local custom_data = packet:r_stringZ() local story_id = packet:r_u32() local spawn_story_id = packet:r_u32()
-- cse_shape local shape_count = packet:r_u8() for i=1,shape_count do local shape_type = packet:r_u8() if shape_type == 0 then -- sphere local center = packet:r_vec3() local radius = packet:r_float() else -- box local box = packet:r_matrix() end end
-- cse_alife_space_restrictor local restrictor_type = packet:r_u8()
-- cse_alife_custom_zone local max_power = packet:r_float() local owner_id = packet:r_u32() local enabled_time = packet:r_u32() local disabled_time = packet:r_u32() local start_time_shift = packet:r_u32()
-- cse_alife_anomalous_zone local offline_interactive_radius = packet:r_float() local artefact_spawn_count = packet:r_u16() local artefact_position_offset = packet:r_u32()
-- se_zone_anom local last_spawn_time_present = packet:r_u8()
local left = packet:r_elapsed() if (string.find (name_anom, 'zone_zharka_static') ~= nil or string.find (name_anom, 'zone_witches_galantine') ~= nil or string.find (name_anom, 'zone_mosquito_bald') ~= nil or string.find (name_anom, 'zone_mincer') ~= nil or string.find (name_anom, 'zone_gravi_zone') ~= nil or string.find (name_anom, 'zone_buzz') ~= nil ) and left ~= 0 then abort("left=%d", left) end
-- cse_shape packet:w_u8(1) -- количество фигур packet:w_u8(0) -- тип фигуры: сфера packet:w_vec3(vector():set(0, 0, 0)) if radius_anom ~= nil then packet:w_float(radius_anom) else packet:w_float(1.0) end
-- cse_alife_custom_zone if power_anom ~= nil then packet:w_float(power_anom) else packet:w_float(max_power) end packet:w_u32(owner_id) packet:w_u32(enabled_time) packet:w_u32(disabled_time) packet:w_u32(start_time_shift)
Скрипт для ТЧ, но рандом работать должен. Вызывать spawn_anom, на колбек окончания выброса, например. local anomal - таблица типов аномалий; local level_vertexes - таблица вертексов уровней, для ЗП надо изменить на реальные. з.ы. Сам не проверял, если что не так сильно не пинайте. з.з.ы. в функцию спавна хорошо бы добавить проверку на совпадения координат спавна аномалии с координатами сталкерских баз и мест расположения ключевых НПС...
Сообщение отредактировал Kirk767 - Понедельник, 04.03.2013, 15:07:34