- Туториал: Unreal Kismet - Часть первая.
- Автор: ZluM
UNREAL KISMENT
Теория и практика. Часть 1.
ПРОЛОГ.
Как Вы знаете Kisment инструмент скриптописания в Unreal Editor 4. Скрипты само по себе дело не простое, но поверьте, этот инструмент один из самых лёгких в скриптописании. Особенно если сравнивать старый метод писания: строки кода, бесконечные и нудные. Данная система графического скриптописания напоминает простые логические связи. Самое главное уяснить что к чему, и что вообще здесь можно сделать. Данный курс рассчитан на тех кто ознакомился с моей предыдущей работой «Unreal Kisment – освоение» . То есть для тех обладает начальным представлением о работе с данным инструментом.
ПОЕХАЛИ
Итак, первые нотации:
Надо усвоить, что любой даже самый простой скрипт ВСЕГДА состоит как минимум из 2 частей: главное условие и действие. Пример рис.1
НЕ надо недооценивать нижнюю часть кисмента (то есть параметры блоков). Там могут содержаться полезные и важные вещи.
Если скрипт большой, то ставим комментарии. Так легче потом будет разобраться, если что. Так же полезно разделять на подсекции отдельные скрипты. Рис.2
И
самое главное. Всегда чётко ставьте задачу. Подумайте сначала про себя, как это будет работать, и какие действия нужно сделать в кисменте.Так же очень желательно знание английского языка. Не идеальное конечно. Хотя бы школьный уровень. Ибо в этом случае вам будет легче понять и запомнить теорию.
Разбор по полочкам.
Тут я буду рассказывать о каждом конкретном «блоке» отдельно. Выборочно, т.к. их приличное кол-во и не каждый нам полезен.
Разбираем каталог New Events.
Сразу оговорюсь, что половина этого каталога может быть заменена\удалена. Потому что при выборе ЛЮБОГО объекта на уровне, автоматически создаются в кисменте подсказки. Ну, например, выбираем trigger и открываем кисмент. Щёлкаем ПКМ и видим, что добавилось 2 строки. Рис. 3
Выделенная строка создаёт переменную триггера. Строка ниже показывает все возможные Event’ы с триггером. И так со всеми объектами.
NEW EVENT – ACTOR – Destroyed
Если данный объект уничтожен, то…
NEW EVENT – ACTOR – Take Damage
Если данный объект получил урон(причём надо указать сколько), то…
AI – See Enemy
Искусственный интеллект(бот) увидел врага, то…
Не знаю, где применить. Бесполезная вещь.
DEMO GAME – Input
Совсем бесполезная вещь. Связана с записями демок.
GAME ENDED
Если игра закончилась, то…
LEVEL beginning\loaded and visible\reset\startup
По сути эти 4 вещи нужны для одного. Если уровень начался, то…
MISC – Console Event
Если ввести в консоль что-то (надо указать что) , то…
OBJECTIVE – Countdown Node Succeeded
Для режима войны. Если точка отсчёта «отчиталась» (ну то есть до 0 дошла), то…
OBJECTIVE – Flag Event
Если с флагом что-нибудь случится, то…
OBJECTIVE – Mined Ore
??? Не знаю для чего. Теоретически связано с добычей руды на WAR-PowerSurge. Но детальный осмотр кисмента данной карты показал отсутствие этого блока. Так что вообще неизвестно для чего это.
OBJECTIVE – Objective Completed
Если задача (которую нужно ещё поставить, как это делать расскажу в последующей части) выполнена, то …
OBJECTIVE – Onslaught Node Event
Режим войны. Если с точкой что-либо произойдёт, то…
PAWN – Death
Если сдох, то…
PAWN – Get Inventory
Если получил в инвентарь что-то (надо указать конкретные вещи), то…
PAWN – Line of Sight
??? Тоже неизвестно для чего и какая польза. У меня есть предположение, но я воздержусь.
PAWN – See Death
Более мощный инструмент, чем Death.
PHYSICS – Constraint Broken
Применяется со специальными Constraint Actors. Это ломающиеся объекты.
Поэтому условие говорит за себя: если этот актор сломался, то…
PHYSICS – Mover
Ну, тут должно быть всё ясно – блок мувера должен быть знаком каждому.
PHYSICS – Projectile Landed
Точно не знаю, что это. Переводится как «снаряд выпущен». Думаю это можно опустить, т.к. данная вещь с 99% вероятность вам никогда не понадобится.
PHYSICS – Rigid Body Collision
Тоже из разряда «забудь это». Делает что-то с коллозией деформирующихся тел.
PHYSICS – Touch
В принципе, вещь должна быть знакома и понятна, но всё равно объясню. Эта вещь работает с прикасаниями к объекту. Если прикоснулись к этой вещи, то…
PHYSICS – Touch Status
Похоже на предыдущее, но с другим условием. Если первый раз коснулись, то…
PICK UP STATUS CHANGE
Эта штука работает исключительно с респауном оружия. Например, если это оружие взяли, то…
PLAY CORE DESTRUCTION
Тут просто: если ядро уничтожено, то…
PLAYER – Player Spawned
Если игрок респаунился, то…
REMOTE EVENT
Полезная вещь. Соединяет скрипты на разных уровнях иерархии. Но может работать и в пределах одной ступени иерархии, хотя это почти всегда не нужно.
Как это работает, я покажу в последующей статье.
SEQUENCE ACTIVATED
Очень похоже на предыдущую функцию. Расскажу позже, как это работает.
SKIPPED CINEMATIC
Эта штука работает с матинэ. Если ролик матинэ прерван (то есть во время просмотра нажали Esc), то …
TURRET STATUS CHANGE
Если с турелью произошло что-то, то…
TURRETS – Turret Spawned
Если турель возродилась, то…
USED
Вот это честно не знаю что. Даже догадок нет.
VEHICLE FACTORY EVENT
Если с данной Машиной (указать какой) что-то случилось, то…
Ну, вот и всё, что есть в разделе New Event. В следующем туторе. Я вас ознакомлю с разделами New Variable и New Condition.