Итак, давайте вначале разберемся с определением мувер. Муверы это объекты которые могут передвигатся непосредственно в игровом процессе. В KF это двери, лифты, машины, скейтборды и прочее. Создаются они с помощью статиков и имеют схожие свойства, но также есть ряд дополнительных возможностей. Создание
1. Начнем с самого простого. Выберем в Static Mesh браузере меш (дверь например) для будущего мувера. Можно также сделать его с помощью Solid брашей, конвертировав их в статик. Теперь следует нажать ПКМ на кнопку Add Mover Brush , выберем обычный Mover. Он появится внутри браша-билдера, так что их Pivotы будут совпадать. На 2D экранах мувер имеет розовые контуры. Созданная дверь имеет закрытое положение, переместим её в нужное место и настроим размер с помощью DrawScale3D. Закрытая дверь имеет ключ 0, начальное положение. Что бы дверь могла открыватся требуется утановить положение 1, в котором она будет открыта. Для этого следует щелкнуть по двери ПКМ и выбрать Mover > Key 1, после чего передвинуть/повернуть её в положение, в котором она будет открыта. Если все сделано правильно, то щелкнув по двери снова и выбрав Mover > Key 0, она вернется в начальное положение. Информация о движении выглядит в виде разницы координат, поэтому передвигая дверь в начальном положении, с ней передвинется и её закрытый вариант. Если мы испытаем такую дверь в игре, то она будет открываться при непосредственном контакте с игроком и закрываться спустя определенное время. 2. Тип активации
Настроить тип активации муверов можно в свойствах во вкладке Object, здесь основным параметром является InitialState. Из них актуальные: ConstantLoop – Объект движется постоянно и не требует активации. TriggerToggle – Мувер меняет положение, только если был активирован Eventoм (используется по умолчанию для всех дверей в Killing Floor). TriggerOpenTimed – Мувер "открывается” Eventoм, по прошествии определенного времени возвращается в исходное положение. BumpOpenTimed – Мувер "открывается” при контакте с ним, "закрывается” по прошествии определенного времени (используется по умолчанию для Mover). StandOpenTimed – Мувер активируется, если на него станут, "закрывается” по прошествии определенного времени.
Триггеры
Триггеры – это активаторы, работают они по простой системе Event > Tag (событие > метка). Это по сути "кнопки” которые могут создавать событие (Event), активирующее что – либо с определенной меткой (Tag). Иными словами это устройство для запуска, и не только муверов. У триггеров и муверов в свойствах есть вкладка Events. В свойствах триггера в поле Event пишется название события (можно придумать любое), а в свойствах мувера в поле Tag – метка. Например: Триггеры можно найти в Actor Class браузере, во вкладке Triggers. Для дверей подойдут 2 типа триггеров. Это KFUseTrigger (есть также KFElevatorTrigger для лифтов) во вкладке UseTrigger и KFProxyTrigger во вкладке Trigger. KFUseTrigger используется для стандартных дверей в KF (KFDoorMover), у которых тип активации TriggerToggle. С помощью него двери открываются и закрываются по нажатии кнопки использовать. Выглядит такой триггер как птичья голова и помещается в центр дверей, где будет индикатор заварки. Рассмотрим свойства такого триггера. Как видно из свойств, за сварку отвечает именно триггер, также двери могут быть закрыты на ключ. Основными параметрами здесь являются: MaxWeldStrength – Количество очков сварки необходимых для заварки двери на 100%. ReFireDelay – Задержка в секундах до повторной активации триггера. Message (во вкладке Use Trigger) – Сообщение на экране, когда игрок находится возле триггера и может его активировать. Если ввести "Press USE key”, то будет выдаваться стандартное сообщение, которое также будет переведено на русский язык при русской локализации.
KFProxyTrigger активируется при каком – либо взаимодействии с ним, имеет больше типов активации но не годится для завариваемых дверей. Свойства: bInitiallyActive – активен ли триггер изначально. bTriggerOnceOnly – если True, то триггер может быть активирован только один раз. ClassProximityType – взаимодействие с определенным классом при TT_ClassProximity. DamageThereshold – урон необходимый для активации (только если активируется выстрелом) Message – сообщение в углу экрана при взаимодействии игрока с триггером. RepeatTriggerTime – время через которое действие триггера повторяется, не актуально для данного триггера. ReTriggerDelay – задержка в секундах от активации до возможности повторной активации. TriggerType – тип активации триггера, существуют несколько типов: TT_PlayerProximity (активация при контакте с игроком); TT_PawnProximity (активация при контакте с игроками, зомби и ботами); TT_ClassProximity (активация при контакте с определенным классом, указанном в ClassProximityType); TT_AnyProximity (активация при контакте с любым материальным объектом); TT_Shoot (активация выстрелом, триггер при этом становится осязаемым для пуль); TT_HumanPlayerProximity & TT_LivePlayerProximity (активация при контакте с игроком-человеком и живым игроком, что собственно одно и то же). Свойства муверов
Муверы имеют довольно гибкие настройки, кроме того, они могут функционировать как триггеры создавая события. Рассмотрим основные свойства характерные для всех муверов. Вкладка Mover. Во вкладке MoverEvents можно задать события которые будут активированы на различных стадиях движения мувера. Во вкладке MoverSounds соответственно задаются сопровождающее движение звуки. Двери в KF создаются как KFDoorMover, они могут быть заварены и в них могут ломится зомби, для таких муверов есть дополнительные свойства. bBlockDamagingOfWeld – если True, то сварка будет неразрушима и дверь можно будет открыть только при помощи сварочного аппарата. bDisallowWeld – при True дверь нельзя будет заваривать. bElevOuterDoorTop/Bottom – являются ли двери верхними/нижними дверьми лифта. bKeyLocked – закрыта ли дверь на ключ. bSmallArmsDamage – при True двери можно будет нанести урон не только гранатами. bStartSealed – будет ли дверь заваренной в начале каждой волны. bZombiesIgnore – будут ли зомби игнорировать эту дверь, если она заварена. StartSealedWeldPrc – на сколько процентов будет заварена дверь при bStartSealed. ZombieDamageReductionFactor – Получение урона от зомби. Чем больше значение, тем быстрее зомби её сломают. Также здесь задаются звуки разрушения двери.
Обычная завариваемая дверь Тип мувера: KFDoorMover Тип триггера: KFUseTrigger
Все значения стандартные, двери задано 2 ключа-положения (0 и 1). Для данной двери за основу был взят Static Mesh двери из KF-Offices и были заданны те же самые звуки открытия и закрытия. Event триггера и Tag двери = Door1. В свойствах триггера MaxWeldStrength установлен на 200.
Дверь торговца Тип мувера: KFTraderDoor Тип триггера: нет (активируется с помощью ShopVolume)
Муверы данного типа не могут быть разбиты, заварены или взорваны. Они открываются и закрываются так же как и все муверы, в KF их зачастую используют в магазинах. Случайно выбранная зона магазина (Shop Volume) на карте по уничтожению волны создает Event подобно триггеру, по прошествии времени закупки Event создается повторно, закрывая дверь.
Подъемник – платформа Тип мувера: Mover Тип активации мувера: StandOpenTimed (активируется, когда на него наступают)
Лифты можно делать как и двери, которые открываются вертикально, но в таком случае ими смогут пользоваться только игроки, с чем связано много багов. Лифты – платформы являются простейшими работоспособными лифтами и часто использовались в UT2004. От обычного мувера такой лифт отличается только наличием специальных точек – выходов(LiftExit) и точки – центра(LiftCenter), они находятся в Actor Class браузере во вкладке NavigationPoint. LiftCenter помещается, как несложно догадатся в "центр” лифта – мувера, находящегося в позиции 0 и двигается вместе с ним, на этой точке AI будут стоять во время перемещения лифта. В свойствах LiftCenter, в одноименной вкладке указывается Tag лифта. Точки LiftExit – это условные выходы, через которые боты будут проходить после окончания движения мувера. В их свойствах задается Tag лифта и SuggestedKeyFrame (при каком ключе – положении будет активен этот выход)
Вот собственно и все. Муверы – тема довольно интересная и при наличии фантазии можно создать уникальные вещи. Учитывая что игра разнообразием таковых не балует, ваша необычная идея обязательно запомнится игрокам. Источник тут
Уважаемый пользователь, кликните по двум ссылкам, этим Вы поможете нашему сайту и мы будем Вам очень благодарны!
|