Akella-96 aka SvD 35 Опубликовано 15 Июля 2011 (изменено) Всем привет… Я долго искал статью по созданию работающего радио в ЗП, это было бессмысленно, пришлось учиться самому… Итак приступим…Для того что бы сделать новое РАБОТАЮЩЕЕ радио нам понадобятся файлы:all.spawn (распакованный)sound_theme.scriptИтак сначала заходим в файл alife_zaton.ltx (он находится в распакованном all.spawn)И добавляем в конец вот такие строки: [1866] ; cse_abstract properties section_name = physic_object name = zaton_radio position = 131.13690185547,-6.1206126213074,177.25036621094 direction = 0,2.40000009536743,0 ; cse_alife_object properties game_vertex_id = 296 distance = 0.400000005960464 level_vertex_id = 1189961 object_flags = 0xffffff3a custom_data = <<END [logic] cfg = scripts\zaton_radio.ltx END ; cse_visual properties visual_name = dynamics\el_tehnika\priemnik_gorizont ; cse_ph_skeleton properties skeleton_flags = 1 ; cse_alife_object_physic properties physic_type = 0x3 mass = 10 fixed_bones = link Теперь сохраняем и можно собирать all.spawn он нам больше не нужен(не забывайте ставить его на место переименовывая из файла new в all.Так теперь по порядку все объясню: [1866] – номер секции, он не должен повторяться.Если у вас чистый all то номер будет 1866 ; cse_abstract properties section_name = physic_object name = zaton_radio – уникальное имя position = 131.13690185547,-6.1206126213074,177.25036621094 - координаты direction = 0,2.40000009536743,0 ; cse_alife_object properties game_vertex_id = 296 – координаты вертикс distance = 0.400000005960464 level_vertex_id = 1189961 - координаты уровня object_flags = 0xffffff3a custom_data = <<END [logic] cfg = scripts\zaton_radio.ltx – путь к логике END ; cse_visual properties visual_name = dynamics\el_tehnika\priemnik_gorizont – путь визуалу модели ogf причем заметьте что ogf т.е. формат писать не надо ; cse_ph_skeleton properties skeleton_flags = 1 ; cse_alife_object_physic properties physic_type = 0x3 mass = 10 fixed_bones = link Редактируем только те места которые я откомментировал!!!Так теперь самое главное… ЛогикаЗаходим в папку gamedata//configs//scripts создаём там файл zaton_radio.ltx и в нём пишем: [logic] active = ph_sound [ph_sound] snd = music_radio looped = false min_idle = 300 max_idle = 500 random = true Сохраняем…Теперь заходим в папку gamedata\\ sound\\ characters_voice\\scenario\\ и создаем там папку zaton_radio после чего кидаем в эту папку музыкальные файлы в формате ogg и назовем их примерно так: zaton_1, zaton_2, zaton_3, zaton_4, zaton_5 (я написал только 5 названий песен, потому что вам для начало и 5 треков хватит)Все с музыкальными файлами закончили…Теперь открываем файл gamedata\\script\\sound_theme.script и в самом начале после строчки theme = {} пишем вот это: ph_snd_themes = {} ph_snd_themes["music_radio"] = { "characters_voice\\scenario\\zaton_radio\\zaton_5", "characters_voice\\scenario\\zaton_radio\\zaton_4", "characters_voice\\scenario\\zaton_radio\\zaton_3", "characters_voice\\scenario\\zaton_radio\\zaton_2", "characters_voice\\scenario\\zaton_radio\\zaton_1" } Сохраняем…После последней строчки запятую ставить не надо!!!Всё можно идти на и слушать радио (оно появится в скадовске на столе)(Теперь для тех, кто ещё не понял, строки в виде: "characters_voice\\scenario\\zaton_radio\\zaton_1" - это списки песен, которые будет проигрывать наше радио)Внимание: этот метод проверялся на чистом сталкере зов припяти версии 1.6.00На некоторых модах может не работать из-за не совместимостиСтатья от Akella-96 Изменено 19 Сентября 2014 пользователем World_Stalker 1 AWRP : Re - Load 0.2 © Поделиться этим сообщением Ссылка на сообщение
Akella-96 aka SvD 35 Опубликовано 20 Мая 2012 (изменено) Вывод сообщения о малом ХП (рабочая функция)Автор статьи - Akella-96 aka SvDВсем привет, помню на Сталкер - Вики была статья про это, но насколько я знаю, она не рабочая. Сегодня я попробовал разобраться в структуре этой функции, но ни чего не понял. Вскоре я создал рабочую функцию на основе уже существующей - вывод сообщения при большой радиацииИтак, начнем : Сперва находим в gamedata\scripts\bind_stalker.script вот эту функцию --[[ --' Вывод сообщения о большой радиации if self.object.radiation >= 0.7 then local hud = get_hud() local custom_static = hud:GetCustomStatic("cs_radiation_danger") if custom_static == nil then hud:AddCustomStatic("cs_radiation_danger", true) hud:GetCustomStatic("cs_radiation_danger"):wnd():TextControl():SetTextST("st_radiation_danger") end else local hud = get_hud() local custom_static = hud:GetCustomStatic("cs_radiation_danger") if custom_static ~= nil then hud:RemoveCustomStatic("cs_radiation_danger") end end ]]-- И после неё пишем ----------------------------------------------------------------------------------------------------------- --' Вывод сообщения о малом ХП автор - Akella-96 aka SvD if self.object.health <= 0.3 then local hud = get_hud() local custom_static = hud:GetCustomStatic("cs_health_danger") if custom_static == nil then hud:AddCustomStatic("cs_health_danger", true) hud:GetCustomStatic("cs_health_danger"):wnd():TextControl():SetTextST("st_health_danger") end else local hud = get_hud() local custom_static = hud:GetCustomStatic("cs_health_danger") if custom_static ~= nil then hud:RemoveCustomStatic("cs_health_danger") end end ---------------------------------------------------------------------------------------------------------- Потом идем в gamedata\configs\ui\ui_custom_msgs.xml и в самом начале пишем <cs_health_danger x="262" y="50" width="500" height="20" complex_mode="1"> <text font="graffiti22" r="255" g="0" b="0" a="255" align="c"/> </cs_health_danger> Далее идем в gamedata\configs\text\rus\ui_st_screen.xml в самый конец, перед </string_table> добавляем <string id="st_health_danger"> <text>У вас мало здоровья! Примите аптечку!</text> </string> Все. Теперь при состоянии здоровья, меньшего 30% будет выводиться сообщение. Изменено 21 Сентября 2014 пользователем World_Stalker 3 AWRP : Re - Load 0.2 © Поделиться этим сообщением Ссылка на сообщение
Akella-96 aka SvD 35 Опубликовано 10 Августа 2013 (изменено) Небольшой пак уроков от меня (всего два урока, позже будут еще). Оба урока в формате .doc. • Добавление абсолютно новых ящиков на классе inventory_box • Показываем состояние здоровья ГГ в процентах Надеюсь, они окажутся полезными. Скачать : http://rghost.ru/48034494 Изменено 19 Сентября 2014 пользователем World_Stalker 3 AWRP : Re - Load 0.2 © Поделиться этим сообщением Ссылка на сообщение
Akella-96 aka SvD 35 Опубликовано 8 Августа 2014 (изменено) В темные времена, когда у меня были перебои с интернетом, я сохранял Web - страницы на ПК, чтобы можно было просматривать их, когда интернет отключен. Так и появился данный пак статей о SDK 0.7, в основном о Level Editor и постройке локации. Может, кому пригодится - если тоже перебои с подключением к сети, да и просто не надо будет искать. https://yadi.sk/d/gQX8KGT6ZK6AU Изменено 19 Сентября 2014 пользователем World_Stalker 7 8 6 1 AWRP : Re - Load 0.2 © Поделиться этим сообщением Ссылка на сообщение