Waitforsecond là một phương thức của Unity, có chức năng trì hoãn một Coroutine với một khoảng thời gian tính bằng giây. Vì vậy, trong bài viết sau đây sẽ giúp các bạn tìm hiểu về phương thức này và cách dùng của nó. Phương thức rất quan trọng với các bạn mới bắt đầu với bộ môn lập trình Game Unity.
Waitforsecond là 1 câu lệnh trong gói Unit Core Library, câu lệnh dùng để tạm dừng thực thi 1 câu lệnh, đoạn lệnh (coroutine) trong thời gian x bất kì. Thời gian x được tính toán thông qua thuộc tính trong Class Time của Unity
Waitforsecond rất hay được sử dụng trong các game ở 1 số tình huống. Ví dụ các bạn đang làm game Bắn Gà, cứ 5s thì rơi 1 quả bom ra màn hình hay Game Rambo cứ mỗi 10s thì nhân vật khôi phục được 10% máu hoặc đơn giản như game Mario sau 120 giây nếu nhân vật không tới đích thì thông báo Game Over . ….
Để hiểu rõ hơn về câu lệnh này, chúng ta sẽ tìm hiểu 1 ví dụ ngắn như sau. Ví dụ dưới đây chia ra làm 5 bước để các bạn dễ theo dõi. Trong ví dụ này, chúng ta cùng làm chức năng sau khi game chạy 5s sẽ sinh ra 1 đốm pháo hoa ở giữa màn hình.
Bước 1: Tạo dự án Unity Game 2D, thêm 1 script tên là DemoController và gắn vào gameObject Camera.
Bước 2 : Tạo đốm pháo hoa bằng Particle System, sau đó gán thành Prefab.
Bước 3 : Tiến hành định nghĩa hàm waitforseconds như sau:
Cuối cùng đừng quên tham chiếu biến phaoHoa ở dòng 8 như hình :
Như vậy là chúng ta đã có bài ví dụ hoàn chỉnh, các bạn chạy thử ví dụ xem kết quả code mẫu nhé!
Ngoài phương thức trên, các bạn có thể tham khảo thêm hàm WaitForSecondsRealtime có chức năng tương tự nhưng thời gian được tính trên thuộc tính Time.time (thời gian thực). Đây là một phương thức quan trọng mà một lập trình viên mơi cần nắm được và hy vọng bài viết này sẽ giúp các bạn triển khai được Waitforsecond một cách đơn giản.
Bộ môn Công nghệ thông tin
Trường Cao đẳng FPT Mạng cá cược bóng đá
cơ sở Hà Nội