If và else
Thuộc phần Những kiến thức cơ bản về lập trình trong Unity trong hành trình Unity của Coddy. Bài học 6 trên 85.
Kiểu bool lưu một trong hai giá trị: true hoặc false. Cánh cửa có mở không? Người chơi có đang ở trên mặt đất không? Trò chơi đã kết thúc chưa?
bool gameOver = false;Câu lệnh if chỉ chạy các dòng lệnh bên trong khi điều kiện đúng, còn else chạy các dòng lệnh bên trong khi điều kiện không đúng. Dấu ngoặc nhọn { } bao quanh các dòng lệnh thuộc mỗi phần:
if (gameOver)
{
transform.position = new Vector3(0, -2, 0);
}
else
{
transform.position = new Vector3(0, 2, 0);
}Đoạn code này làm một đối tượng chìm xuống khỏi tầm nhìn khi trò chơi kết thúc và giữ đối tượng ở phía trên khi trò chơi vẫn tiếp diễn. Code như thế này nằm bên trong một phương thức, chẳng hạn như Update(), không bao giờ nằm sau dấu } cuối cùng của lớp.
Unity cũng trả lời các câu hỏi bằng giá trị bool. Input.GetKey(KeyCode.Space) trả về true khi người chơi giữ phím cách và false trong thời gian còn lại, vì vậy Update() có thể kiểm tra giá trị này trong mỗi khung hình.
Thử thách
DễGiữ phím Space sẽ nâng cánh cổng lên.
- Bên dưới hai chú thích trong
Update(), viếtif (open)vớitransform.position = new Vector3(0, 3, 0);bên trong cặp dấu ngoặc nhọn. - Sau đó, viết
elsevớitransform.position = new Vector3(0, 1, 0);bên trong cặp dấu ngoặc nhọn.
Nhấn Chơi, nhấp vào trò chơi rồi giữ phím Space: cánh cổng sẽ nâng lên và hạ xuống khi bạn thả phím. Sau đó, nhấn Kiểm tra.
Tự làm thử
using UnityEngine;
public class Gate : MonoBehaviour
{
void Update()
{
bool open = Input.GetKey(KeyCode.Space);
// Nếu open là true, di chuyển cổng đến (0, 3, 0).
// Nếu không, di chuyển cổng đến (0, 1, 0).
}
}
Tất cả bài học trong Những kiến thức cơ bản về lập trình trong Unity
1C# cơ bản trong Unity
Xin chào, UnityBiếnSố thập phân cần có fVăn bản trong ConsoleBiến có thể ghi nhớIf và elseSo sánh các sốÔn tập: Thu thập xu7Vòng lặp và phương thức
Lặp lại với forVòng lặp lồng nhauViết phương thứcPhương thức trả lờiMảngÔn tập: Cầu thang2Làm cho nó chuyển động
Đặt khối lập phươngDi chuyển theo từng khung hìnhXoay mỗi giâyĐiều khiển bằng các phímÔn tập: Lái khối lập phương5Vectơ
Cộng vectơPhương hướngKhông gian cục bộ và không gian thế giớiTốc độ theo đường chéoKhoảng cách giữa các vậtVector3 là một structÔn tập: Người điều khiển drone8GameObject và thành phần
Tham chiếu trong InspectorLấy một thành phầnThành phần bị thiếuThêm một thành phầnRequireComponentHiện và ẩnÔn tập: Công tắc đèn3Inspector
Các trường trong InspectorSerializeFieldSố thực và MathfThuộc tính trong InspectorÔn tập: thang máy6Biến đổi và hệ phân cấp
Đối tượng cha và conKéo cờ lênTỷ lệNhìn vào các vật thểDi chuyển đến một điểmÔn tập: Mặt trăng quay quanh9Dự án: Bắt lấy ngôi sao
Người bắt saoNgôi sao rơiTự luyện tập: Playground Unity