Giờ hãy nói về các điều kiện phức tạp hơn mà ta có thể kiểm tra trong chương trình. Để minh họa, tôi đã thiết lập khung vẽ trông như một trò chơi cũ đã từng chơi Foursquare. Có bốn hình vuông (nó có một cái tên hay) và bạn đứng trong một hình vuông rồi đưa bóng của bạn vào trong các hình vuông khác. Vậy, ngay bây giờ tôi sẽ vẽ một hình elip tại vị trí con trỏ, như vậy nó giống như một quả bóng Những gì tôi muốn làm là làm nổi bật hình vuông mà quả bóng đang ở, bằng cách vẽ một hình chữ nhật màu trắng trên nó. Tôi biết mình cần một mệnh đề IF để làm điều đó, bởi tôi chỉ muốn làm điều đó mỗi khi vượt qua hình chữ nhật đó Được rồi, vậy hãy bắt đầu bằng cách vẽ hình chữ nhật. Tôi chỉ cần copy trực tiếp từ đó, nhưng tô cho nó một màu khác, màu trắng chẳng hạn. Tốt rồi. Giờ, hãy bọc nó trong khối lệnh IF Bạn thấy đấy, nó tự động điền dấu ngoặc nhọn, nên ta phải di chuyển vào bên trong. Ok. Vậy khi nào ta muốn hiển thị hình chữ nhật đó? Chà, ta biết ta muốn làm điều đó khi mouseX nhỏ hơn 200 (mouseX < 200) Nó đã chạy, nhưng sau đó nếu tôi đi xuống đây, nó vẫn đang hiển thị. Nên tôi cũng cần kiểm tra mouseY nữa. Chà, làm cách nào để kiểm tra Cả 2 điều đó? Đó là lý do tại sao ta có toán tử "VÀ" Vậy, toán tử And được sử dụng khi ta muốn kiểm tra nhiều điều kiện. Vậy, ta chỉ cần viết && và sau đó viết điều kiện tiếp theo, "mouseY < 200" Nó không sáng còn ở đây nữa và nó ở đây! YAYY Hãy thực hiện với hình vuông tiếp theo, chỉ để chứng minh rằng nó hoạt động. Được rồi, ta chỉ cần thay đổi một số chỗ. Thay vào đó hãy lấy hình chữ nhật này, và rõ ràng cần thay đổi điều kiện để nó không sáng lên nữa. Vậy, lần này, mouseX cần lớn hơn 200 và mouseY vẫn nhỏ hơn 200 Đẹp quá, nhìn kìa! Được rồi, bây giờ, trong Foursquare, bất cứ khi nào bóng chạm vào các cạnh, bạn biết đấy, những đường này nằm ở giữa và các góc ta luôn thông báo "EdgeBall" Vậy, tôi cũng muốn làm điều đó ở đây. Hãy bắt đầu bằng cách viết "EDGE BALLL". Và hãy viết ở giữa và tô chữ màu đỏ. Vậy, tôi chỉ muốn nó xảy ra nếu chạm vào cạnh. Vậy, ta sẽ thêm if Và chuyển đoạn code này vào bên trong nó Khi nào tôi muốn nó xảy ra? Ồ, có các cạnh ở giữa, nên ở giữa là khi mouseX == 200 Được rồi để xem. Tôi có nhận được Edge Ball không .. Chúng tới rồi! EDGE BALL OK. Hừm. Vậy, nó hoạt động trong đường kẻ giữa này, ở đây Nhưng tôi cũng muốn nó hoạt động tại đường kẻ này ở đây nữa. Vậy, trong trường hợp đó, tôi muốn mouseY == 200, vì đó là đường kẻ giữa. Ok Hãy xem, nó không hoạt động. Chẳng có gì hoạt động cả. Ow, có 1 thứ chạy được, tại chính giữa tâm điểm. Vâng, đó là bởi ta đã sử dụng toán tử VÀ, vì vậy nó sẽ chỉ thực hiện nếu cả hai điều kiện này là đúng, và nó sẽ chỉ xảy ra ở tâm điểm. Vậy, những gì tôi thực sự muốn nói là, EITHER (HOẶC) một trong những điều này đúng Vậy, ta sử dụng toán tử OR Vậy, toán tử OR trông như thế này: "||" Ta gọi chúng là ký tự sổ dọc (pipe symbols), và có lẽ bạn chưa bao giờ sử dụng chúng Bạn phải nhìn nó trên bàn phím, nó thường ở phía trên bên phải Hy vọng rằng bạn thực sự thấy có nó trên bàn phím. Ổn rồi? Tuyệt, vậy bây giờ hãy xem nó hoạt động hay không .. Được rồi, nó hoạt động ở đó, ở đó và sau đó hoạt động ở đó .. đẹp đấy .. ta có thể tiếp tục thêm nhiều điều kiện ở đây Như vậy với cả AND và OR, bạn có thể có nhiều thứ như mình muốn Nếu cần kiểm tra 60 điều kiện khác nhau, ta hoàn toàn có thể làm điều đó, phải không? Bởi ta chưa quan tâm tới các cạnh nên giả sử nếu mouseX nhỏ hơn 3 Vậy, đó phải là ... xem nào, cạnh bé xíu nằm ở đó Rất tốt Hoặc mouseX lớn hơn 397 (mouseX> 397) Xem nào .. đẹp quá! Vậy, ta tiếp tục áp dụng điều đó với tất cả các cạnh Như vậy, vâng! Với AND (&&) và OR (||) giờ bạn có thể thấy cách ta xây dựng các điều kiện phức tạp hơn nhiều trong các chương trìnhh. Và điều đó thật tốt, bởi thế giới quả là nơi phức tạp.