CoP: Создание работающего радио — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
Строка 9: | Строка 9: | ||
[zaton_1866] | [zaton_1866] | ||
− | ; cse_abstract properties | + | ; cse_abstract properties |
− | section_name = physic_object | + | section_name = physic_object |
− | name = zaton_radio | + | name = zaton_radio |
− | position = 131.13690185547,-6.1206126213074,177.25036621094 | + | position = 131.13690185547,-6.1206126213074,177.25036621094 |
− | direction = 0,2.40000009536743,0 | + | direction = 0,2.40000009536743,0 |
− | ; cse_alife_object properties | + | ; cse_alife_object properties |
− | game_vertex_id = 296 | + | game_vertex_id = 296 |
− | distance = 0.400000005960464 | + | distance = 0.400000005960464 |
− | level_vertex_id = 1189961 | + | level_vertex_id = 1189961 |
− | object_flags = 0xffffff3a | + | object_flags = 0xffffff3a |
− | custom_data = <<END | + | custom_data = <<END |
− | [collide] | + | [collide] |
− | ignore_static | + | ignore_static |
− | [logic] | + | [logic] |
− | cfg = scripts\zaton\zaton_radio.ltx | + | cfg = scripts\zaton\zaton_radio.ltx |
− | END | + | END |
− | ; cse_visual properties | + | ; cse_visual properties |
− | visual_name = dynamics\el_tehnika\priemnik_gorizont | + | visual_name = dynamics\el_tehnika\priemnik_gorizont |
− | ; cse_ph_skeleton properties | + | ; cse_ph_skeleton properties |
− | ; cse_alife_object_physic properties | + | ; cse_alife_object_physic properties |
− | physic_type = 0x3 | + | physic_type = 0x3 |
− | mass = 10 | + | mass = 10 |
− | fixed_bones = link | + | fixed_bones = link |
− | upd:num_items = 0x3b | + | upd:num_items = 0x3b |
− | upd:ph_force = -1026054538,1178713870,1148917712 | + | upd:ph_force = -1026054538,1178713870,1148917712 |
− | upd:ph_torque = 1176146099,344496243,1224736768 | + | upd:ph_torque = 1176146099,344496243,1224736768 |
− | upd:ph_position = 131.13690185547,-6.1206126213074,177.25036621094 | + | upd:ph_position = 131.13690185547,-6.1206126213074,177.25036621094 |
− | upd:ph_rotation = 1479689794,1558332544,1735607834,5470 | + | upd:ph_rotation = 1479689794,1558332544,1735607834,5470 |
− | upd:ph_angular_vel = -16646106,1137172917,1082910749 | + | upd:ph_angular_vel = -16646106,1137172917,1082910749 |
− | upd:ph_linear_vel = 5475,-1142554624,-1674313728 | + | upd:ph_linear_vel = 5475,-1142554624,-1674313728 |
− | + | Теперь сохраняем и можно собирать all.spawn он нам больше не нужен. | |
− | + | Так теперь самое главное… Логика | |
− | + | Заходим в папку gamedata//configs//scripts//zaton создаём там файл zaton_radio.ltx и в нём пишем | |
− | [logic] | + | [logic] |
− | active = sr_idle@start | + | active = sr_idle@start |
− | [sr_idle@start] | + | [sr_idle@start] |
− | on_actor_in_zone = zat_a2_sr_noweap | sr_idle@stop %=play_sound_looped(zat_a2_base_radio)% | + | on_actor_in_zone = zat_a2_sr_noweap | sr_idle@stop %=play_sound_looped(zat_a2_base_radio)% |
− | [sr_idle@stop] | + | [sr_idle@stop] |
− | on_info = {+kogda_rak_na_gore_svisnet} sr_idle@nil %=stop_sound_looped% | + | on_info = {+kogda_rak_na_gore_svisnet} sr_idle@nil %=stop_sound_looped% |
− | + | Сохраняем… | |
Далее идём по адресу gamedata\configs\misc где находим фаил "script_sound_zaton.ltx". | Далее идём по адресу gamedata\configs\misc где находим фаил "script_sound_zaton.ltx". | ||
В самом начале, после [list_script_sound_zaton], пишем zat_base_radio, а в самом конце файла создаём секцию такого вида: | В самом начале, после [list_script_sound_zaton], пишем zat_base_radio, а в самом конце файла создаём секцию такого вида: |
Версия 18:26, 12 декабря 2011
Для того что бы сделать новое РАБОТАЮЩЕЕ радио нам понадобятся файлы: All.spawn(распакованный) script_sound_zaton.ltx
Итак сначала заходим в файл alife_zaton(он находится в распакованном all.spawn) И добавляем в конец вот такие строки
[zaton_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 [collide] ignore_static
[logic] cfg = scripts\zaton\zaton_radio.ltx END
; cse_visual properties visual_name = dynamics\el_tehnika\priemnik_gorizont
; cse_ph_skeleton properties
; cse_alife_object_physic properties physic_type = 0x3 mass = 10 fixed_bones = link
upd:num_items = 0x3b
upd:ph_force = -1026054538,1178713870,1148917712 upd:ph_torque = 1176146099,344496243,1224736768 upd:ph_position = 131.13690185547,-6.1206126213074,177.25036621094 upd:ph_rotation = 1479689794,1558332544,1735607834,5470
upd:ph_angular_vel = -16646106,1137172917,1082910749
upd:ph_linear_vel = 5475,-1142554624,-1674313728
Теперь сохраняем и можно собирать all.spawn он нам больше не нужен.
Так теперь самое главное… Логика
Заходим в папку gamedata//configs//scripts//zaton создаём там файл zaton_radio.ltx и в нём пишем
[logic] active = sr_idle@start
[sr_idle@start] on_actor_in_zone = zat_a2_sr_noweap | sr_idle@stop %=play_sound_looped(zat_a2_base_radio)%
[sr_idle@stop] on_info = {+kogda_rak_na_gore_svisnet} sr_idle@nil %=stop_sound_looped%
Сохраняем…
Далее идём по адресу gamedata\configs\misc где находим фаил "script_sound_zaton.ltx".
В самом начале, после [list_script_sound_zaton], пишем zat_base_radio, а в самом конце файла создаём секцию такого вида:
[zat_base_radio] type = looped path = music\radio\zaton_radio_generic shuffle = rnd
В папке sounds\music создадим папку с названием "radio", поместив туда (предвориельно откоментированый*) звуковой фаил с названием "zaton_radio_generic.ogg"
Удачи!!!
Статья от Akella-96. Отредактировал и исправил ошибки Сергей][aka Moonlight.