Page 240 - Em Học Python
P. 240
Ở ❸, ta kiểm tra xem toạ độ y1 (đỉnh của bóng!) có nhỏ hơn hoặc bằng 0 hay không.
.
Nếu có, ta cho biến y giá trị 1 Ở đây ý ta nói rằng, nếu bóng chạm mép bên trên của màn
hình, đừng giảm một đơn vị trên vị trí của bóng nữa, đồng thời cũng có nghĩa là bóng đừng
di chuyển lên trên nữa.
Ở ❹, ta kiểm tra xem toạ độ y2 (đáy của bóng!) có lớn hơn hoặc bằng với biến
.
canvas_height không. Nếu có, ta sẽ cho y quay trở lại giá trị -1
Thử chạy chương trình, quả bóng sẽ đập lên đập xuống quanh bảng vẽ cho đến khi
em đóng cửa sổ.
ĐIỀU HƯỚNG BÓNG
Bóng mà cứ bật lên bật xuống thế này trông không
giống game tí nào, ta sẽ sửa code một chút để thay đổi hướng
đi ban đầu của bóng nhé – là hướng bóng sẽ bay lúc ta vừa bắt
đầu game ấy mà. Trong hàm __init__ đổi hai dòng này:
=
0
elf.x
s
=
s
elf.y 1
-
thành như sau (nhớ kiểm tra kỹ số khoảng trắng tính từ đầu dòng nhé – có tám dấu cách
tất cả đấy)
tarts -3, 2, 1, , , ]
3
-
-
=
s
[
1
2
andom.shuffle(starts)
r
s
s
=
elf.x tarts[0]
s
-
=
elf.y 3
l
Ở ❶, ta tạo ra biến starts à một danh sách gồm sáu con số, rồi gọi random.shuffle
ở ❷ để trộn mảng này lên. Ở ❸, ta đặt giá trị của x à phần tử đầu tiên của mảng đã được
l
trộn, như vậy x có thể là bất cứ số nào trong khoảng từ –3 đến 3.
Do đổi y thành –3 ở ❹ (để cho bóng bay nhanh hơn), ta cần phải sửa thêm một vài
chỗ nữa để chắc chắn bóng không bay ra khỏi hai cạnh trái phải của màn hình. Thêm dòng
214 Chương 13