Переход между уровнями (level changer) — различия между версиями
RedPython (обсуждение | вклад) (Новая страница: «Все живые существа перемещаются по глобальному графу, и, соответственно, для них не нужн…») |
RedPython (обсуждение | вклад) м |
||
Строка 9: | Строка 9: | ||
[[Файл:level-changer-prefs-02.png|center]] | [[Файл:level-changer-prefs-02.png|center]] | ||
− | Параметр Silent mode отвечает за вывод диалогового окошка с подтверждением желания перейти на другой уровень (да/нет). Если отмечен, то окошко не выводится и игрока перебрасывает сразу. | + | Параметр '''Silent mode''' отвечает за вывод диалогового окошка с подтверждением желания перейти на другой уровень (да/нет). Если отмечен, то окошко не выводится и игрока перебрасывает сразу. |
При необходимости в свойствах перехода, в параметре '''Custom data''', можно задать [[way point|точку пути]], в которую игрока будет перебрасывать при отказе перейти на другой уровень. | При необходимости в свойствах перехода, в параметре '''Custom data''', можно задать [[way point|точку пути]], в которую игрока будет перебрасывать при отказе перейти на другой уровень. | ||
Строка 17: | Строка 17: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | Изначально к level changer'у не подсоединён свой [[shape|шейп]], т.к. геометрия, в которой располагается точка перехода, может иметь различную форму, и, соответственно, под неё придется делать | + | Изначально к level changer'у не подсоединён свой [[shape|шейп]], т.к. геометрия, в которой располагается точка перехода, может иметь различную форму, и, соответственно, под неё придется делать свой шейп, при попадании в который сработает переход. |
[[Категория:A-Life]] | [[Категория:A-Life]] |
Версия 00:35, 19 ноября 2017
Все живые существа перемещаются по глобальному графу, и, соответственно, для них не нужны особые точки перехода — всё просчитывается автоматически компилятором xrAI. Но actor управляется игроком, а не симуляцией, поэтому для него был придуман спавн-объект Level changer, предназначенный специально для перехода игрока с одного уровня на другой.
Каждому переходу требуется по одной точке графа. В их свойствах, в разделе Connection, в параметре Level name следует выбрать имя целевой локации (на неё существо или игрока будет перекидывать), а в параметре Point name указать имя целевой точки графа (на ней существо или игрок окажется после перехода). Имена уровней читаются LevelEditor'ом из файла configs\game_levels.ltx
Затем в свойствах самого level changer'а в поле Level to change нужно выбрать имя целевого уровня и Point to change — точку графа на том уровне, куда должен попасть игрок.
Параметр Silent mode отвечает за вывод диалогового окошка с подтверждением желания перейти на другой уровень (да/нет). Если отмечен, то окошко не выводится и игрока перебрасывает сразу.
При необходимости в свойствах перехода, в параметре Custom data, можно задать точку пути, в которую игрока будет перебрасывать при отказе перейти на другой уровень. Формат конфига таков:
[pt_move_if_reject]
path = esc_level_changer_to_val_reject_way ; патрульный путь, в начало которого перебрасывает игрока
Изначально к level changer'у не подсоединён свой шейп, т.к. геометрия, в которой располагается точка перехода, может иметь различную форму, и, соответственно, под неё придется делать свой шейп, при попадании в который сработает переход.