Логіка завершення гри
Свайпніть щоб показати меню
У цьому розділі ми налаштуємо умови для 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 показаний, гра також була призупинена! Ось і все!
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат