Зміст курсу
Unreal Engine FPS Гра
Unreal Engine FPS Гра
Логіка завершення гри
У цьому розділі ми налаштуємо умови для gameover, коли у гравця закінчується здоров'я! Існує кілька способів зробити це. Наприклад, ви можете налаштувати нову функцію, яка перевіряє здоров'я гравця і показує Віджет Gameover, коли здоров'я менше або дорівнює zero
, а потім використовувати Event Tick
, щоб постійно викликати цю функцію.
Однак, це не дуже хороша практика! Причина в тому, що ви повинні уникати використання Event Tick
, коли це можливо, оскільки він постійно викликається, і якщо у вас багато інструкцій, які виконуються за допомогою Event Tick
, ви збільшите навантаження на комп'ютер і процесор, особливо якщо обчислення складні. Зважаючи на це, незважаючи на те, що ці обчислення не є особливо складними, ми реалізуємо цю функціональність безпосередньо у нашій функції Take Damage.
Отже, давайте відкриємо функцію TakeDamage, яку ми створили в FirstPersonCharacter
на початку цього курсу. Тут ми можемо перевірити, чи значення змінної PlayerHealth
знизилося до zero
або нижче безпосередньо після оновлення значення! Це хороша практика.
Отже, в кінці функції, де ми маємо наш Set Player Health, витягніть з зеленого піну та знайдіть less or equal to
. Нехай інше ціле число буде 0
, і за допомогою гілки, перевірте, чи значення PlayerHealth
знизилося нижче 0
, як показано нижче.
Далі отримайте контролер гравця і встановіть режим введення на лише інтерфейс та встановіть Показати курсор миші на True
. Таким чином, ми переконуємося, що гравець може натискати на кнопки, які ми розмістили в Gameover
blueprint.
Створіть віджет і знайдіть WBP_Gameover
та додайте його до вьюпорту. Нарешті, знайдіть вузол Set Game Paused і поставте галочку, щоб, коли екран Gameover показаний, гра також була призупинена! Ось і все!
Дякуємо за ваш відгук!