Lệnh if - Câu điều kiện
Code mẫu cuối bài đăng
Video giải thích chi tiết
Video 1: https://www.youtube.com/watch?v=XPus8qv-xNs
Video 2: https://www.youtube.com/watch?v=dGRnGsJW5bU
Cấu trúc lệnh if cơ bản
if( Điều kiện )
// Lệnh 1
end_if // kết thúc câu điều kiện
Nếu điều kiện xảy ra thì thực hiện Lệnh 1 bên trong lệnh if, nếu không thì bỏ qua lệnh if này và Lệnh 1 bên trong cũng sẽ không được thực hiện. 1 if ứng với 1 end_if.
Ví dụ 1: Kiểm tra giá trị biến
if($a = 1 ) // Nếu biến $a = 1
keypress(#a) // Bấm phím A
lclick(10,20) // Click vào tọa độ (x,y)=(10,20)
end_if // kết thúc câu lệnh
Ví dụ 2: Kiểm tra nhiều điều kiện
Điều kiện "Và" tất cả các điều kiện cùng xảy ra - ký hiệu: and hoặc &
Điều kiện "Hoặc" chỉ cần 1 trong các điều kiện xảy ra - ký hiệu: or hoặc |
if($a = 1 & $b=2 ) // Nếu cả biến $a = 1 và $b = 2 thì thực hiện lệnh, nếu 1 trong 2 cái không xảy ra thì lệnh này không được thực hiện.
keypress(#a) // Bấm phím A
lclick(10,20) // Click vào tọa độ (x,y)=(10,20)
end_if // kết thúc câu lệnh
if($a = 1 | $b=2 ) // Chỉ cần $a = 1 hoặc $b = 2, 1 trong 2 xảy ra thì câu lệnh được thực hiện, không cần cả 2 cùng đồng thời xảy ra
keypress(#b) // Bấm phím B
lclick(10,20) // Click vào tọa độ (x,y)=(10,20)
end_if // kết thúc câu lệnh
Ví dụ 3: Kiểm tra điểm ảnh
if_pixel_in(x1,y1,x1,y1,color)
// lệnh 1
end_if
Nếu tại tọa độ x1,y1 có màu color xuất hiện thì thực hiện lênh 1 bên trong
Ví dụ mình di chuột tới tọa độ (x1,y1)=(455,392), mã màu xuất hiện là 255. Tức là khi có thông báo "Chọn màn hình để tiếp tục" hiện lên, mình sẽ thực hiện 1 lệnh click chuột trái tại vị trí (1,1) để tắt thông báo và làm sáng màn lên.
if_pixel_in(455,392,455,392,255)
// lệnh 1
LCLICK(1,1) // click chuột tại vị trí x1,y1=1,1 để tắt thông báo và làm sáng màn hình
end_if
HOẶC
if( pxl(455,392) = 255 )
// lệnh 1
LCLICK(1,1) // click chuột tại vị trí x1,y1=1,1 để tắt thông báo và làm sáng màn hình
end_if
Ví dụ 4: Lệnh If - else
Cấu trúc 1
if (Điều kiện 1)
// lệnh 1
else
if (Điều kiện 2)
// lệnh 2
end_if
Nếu điều kiện 1 xảy ra thì thực hiện lệnh 1, nếu điều kiện 1 không xảy ra thì kiểm tra Điều kiện 2.
Nếu điều kiện 2 xảy ra thì thực hiện lệnh 2, nếu điều kiện 2 cũng không xảy ra thì bỏ qua cụm lệnh này.
Cấu trúc 2
if (Điều kiện 1)
// lệnh 1
else
// lệnh 2
end_if
Nếu điều kiện 1 xảy ra thì thực hiện lệnh 1, nếu điều kiện 1 không xảy ra thì mặc định thực hiện lệnh 2.
Cấu trúc này nên được kiểm soát và nên lồng vào trong 1 lệnh khác. Tránh mỗi vòng quét của tool Điều kiện 1 không xảy ra thì cứ mặc định chạy lệnh 2 bên dưới.
------------------------------- CODE MẪU -----------------------------
getscreen
if_pixel_in(450,389,450,389,255)
print("sang man")
lclick(1,1)
waitms(100)
end_if
if( pxl(628,287) =1603839 )
print("Chon pho ban")
LCLICK(590,214) // Chon pho ban
wait(1)
LCLICK(360,193) // Chon chuong
wait(1)
LCLICK(302,239) // Chon map
wait(1)
LCLICK(474,503) // Chon ai anh hung
wait(1)
LCLICK(496,566) // Dong y
wait(0.5)
end_if
if(pxl(945,569) =12515071 )
print("Sang sang")
waitms(100)
LCLICK(903,234) // Dan duong
waitms(100)
DBLCLICK(951,237) // kickpow
waitms(500)
LCLICK(952,487) // bat dau
waitms(500)
end_if
if_pixel_in(342,314,342,314,3523833) // Màu chữ Đến lượt bạn
print("TURN - ĐẾN LƯỢT BẠN")
keypress(#left)
waitms(200)
keydown(75)
wait(3)
keyup(75)
waitms(200)
getscreen
if( pxl(15,601) = 238) // -6 trai
// lenh ban 1
print("Goc -6 trai")
keypress(#right)
for($z=0,$z<20)
keypress(#up)
end_cyc
waitms(100)
keydown(68)
waitms(100)
keypress(#b)
keypress(#1)
keypress(#4)
keypress(#8)
wait(2)
keyup(68)
else
if( pxl(14,596) = 241)
print("Goc 0 trai")
keypress(#right)
for($z=0,$z<50)
keypress(#up)
end_cyc
waitms(100)
keydown(68)
waitms(100)
keypress(#b)
keypress(#1)
keypress(#4)
keypress(#8)
wait(2)
keyup(68)
end_if// Màu kim góc 0 trai
end_if// Màu kim góc 6 trai
end_if
Nhận xét
Đăng nhận xét