Наверх

[ Музыкальный плеер · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Статистика Форума
Последние обновленные темы Самые популярные темы Самые активные Новые участники
  • HARDWARMOD - v3.2 RC «Трудная война» (1)
  • Old Story (0)
  • Время перемен v2.0 (0)
  • Lost Alpha [Тень Чернобыля] (0)
  • ВСС "Винторез" (2)
  • Кайфоломщик (437)
  • Слова (123)
  • Анекдоты (90)
  • Угадай, где это место? (64)
  • S.T.A.L.K.E.R. (61)
  • naToGeHbI4
  • KamiKaDzE
  • QWENTYS
  • ХОВАН
  • SHooTER
  • Tachenko
  • Striker
  • Двухствольный
  • stalker-mechenuy
  • Монах
  • pavel-barsuk-2
  • 和夫
  • KMasya2004
  • zarrus79
  • VVLLADD
  • NightsOfFire
  • ppriedkov
  • ryhovigor
  • tashail1
  • minaeva2017
    • Страница 1 из 1
    • 1
    Создание быстрых телепортов.
    UndeadLiveДата: Понедельник, 14.03.2011, 16:38 | Сообщение # 1
    Новичoк
    Группа: Одиночки
    Сообщений: 17
    Награды: 0
    Репутация: 10
    Статус: Вне Зоны
    CoP. Создание быстрых телепортов

    Всем привет. В этой теме я покажу, как заспавнить телепорт в ЗП. Так как я создаю свой мод, то решил создать там серии из телепортов. Но как же это сделать? Да очень просто!

    Содержание [убрать]
    1 Координаты
    2 all.spawn
    3 Логика телепорта
    4 Автор

    [править]
    Координаты

    Что нужно сделать, чтобы получить координаты мест для телепортов. Открываем ui_main_menu.script и находим следующие строки:

    if dik == DIK_keys.DIK_Q then
    self:OnMessageQuitWin()
    end

    изменяем их:

    if dik == DIK_keys.DIK_Q then
    self:OnMessageQuitWin()
    elseif dik==DIK_keys.DIK_W then
    self:position_info()
    end

    И в конец файла, т.е. после функции

    function main_menu:OnMenuReloaded()
    self:OnButton_options_clicked()
    self.opt_dlg:OnMenuReloaded()
    end

    вставляем

    function main_menu:position_info()
    local a = db.actor:position()
    local vid = db.actor:level_vertex_id()
    local gvid = db.actor:game_vertex_id()
    local text = "GPS:\\nX= "..a.x.."\\nY= "..a.y.."\\nZ= "..a.z.."\\nlevel_vertex= "..vid.."\\ngame_vertex_id= "..gvid
    news_manager.send_tip(db.actor, text, nil, nil, 30000)
    end

    и сохраняем.

    Заходим в игру, добегаем до места, где бы хотели видеть телепорт, выходим в меню, и в жмём на W, потом возвращаемся в игру и делаем скриншот клавишей F12. Потом добегаем до места, куда бы вас должен перенести телепорт и опять делаем скрин.
    [править]
    all.spawn

    Открываем файл alife_zaton.ltx из декомпилированного all.spawn и в конце добавляем:

    [6464] ;обозначает место, где находится телепорт
    ; cse_abstract properties
    section_name = space_restrictor
    name = zat_b20_teleport
    position = 265.378784,18.411567,526.151062
    direction = 0,0,0
    ;
    ; cse_alife_object properties
    game_vertex_id = 287
    distance = 0
    level_vertex_id = 1420994
    object_flags = 0xffffff3e
    custom_data = <<END
    [logic]
    cfg = scripts\zaton\test_teleport.ltx
    END
    ;
    ; cse_shape properties
    shapes = shape0
    shape0:type = sphere
    shape0:offset = 0,0,0
    shape0:radius = 4.24460601806641
    ;
    ; cse_alife_space_restrictor properties
    restrictor_type = 3

    [6465] ;просто визуал телепорта. т.к сам телепорт невидим, этот визуал его покажет
    ; cse_abstract properties
    section_name = zone_teleport
    name = zat_b20_teleport_horiz
    position = 265.378784,18.411567,526.151062
    direction = 0,0,0
    ;
    ; cse_alife_object properties
    game_vertex_id = 287
    distance = 49
    level_vertex_id = 1420994
    object_flags = 0xffffff3e
    ;
    ; cse_shape properties
    shapes = shape0
    shape0:type = sphere
    shape0:offset = 0,0,0
    shape0:radius = 5.5254921913147
    ;
    ; cse_alife_space_restrictor properties
    restrictor_type = 3
    ;
    ; cse_alife_custom_zone properties
    max_power = 0
    ;
    ; cse_alife_anomalous_zone properties
    offline_interactive_radius = 30
    artefact_spawn_count = 32
    artefact_position_offset = 0x1ac0

    Потом открываем way_zaton.ltx и пишем:

    [test_teleport_walk] ;телепортирует в нужное место
    points = p0
    p0:name = wp00
    p0:position = 113.948539,-7.351358,185.813888
    p0:game_vertex_id = 316
    p0:level_vertex_id = 1162410

    Сохраняем, компилируем all.spawn.
    [править]
    Логика телепорта

    Теперь создадим файл логики, назовем его test_teleport.ltx, кинем в gamedata\configs\scripts\zaton\ и пропишем в нём следующее:

    [logic]
    active = sr_teleport
    ;
    [sr_teleport]
    point1 = test_teleport_walk ;имя секции телепорта в way_zaton.ltx
    look1 = zat_b20_quest_teleport_look

    Всё, сохраняем.

    Заходим в игру, загружаемся... И видим -- неподалёку от вас светится телепорт, прыгаем в него и он вас во мгновение ока преносит на Скадовск.
    [править]
    Автор

    AmiKus

    Обсудить статью всегда можно на странице обсуждения.

     
    • Страница 1 из 1
    • 1
    Поиск:

    Powered by naToGeHbI4 / Сайт оптимизирован под браузер Opera. Хостинг от uCoz