Bài 4: Xây dựng bản đồ vật cản

Từ ChipFC Wiki
Bước tới: chuyển hướng, tìm kiếm


Mục tiêu

  • Học sinh sử dụng vòng lặp để xây dựng bản đồ vật cản trong trò chơi

Nội dung chi tiết

Trong bài này, chúng ta sẽ xây dựng một bản đồ vật cản có kích thước 10x10 trên sân khấu.

Thêm đối tượng vật cản

Từ cửa số lập trình chính, chúng ta nhấp vào Chọn nhân vật từ thư viện để thêm đối tượng vật cản (xem Hình 1)

Hình 1: Thêm đối tượng vật cản từ thư viện có sẵn

Cửa sổ sau đây hiện lên (xem Hình 2), và chọn Button3 để làm vật cản trong bản đồ trò chơi

Hình 2: Chọn đối tượng Button3 để làm vật cản trong trò chơi

Chúng ta hiện thực một đoạn chương trình nhỏ, để khi nhấn vào lá cờ, kích thước của vật cản là 50% so với bình thường (xem Hình 3):

Hình 3: Chương trình đầu tiên cho vật cản Button3

Xây vật cản theo chiều ngang

Trước tiên chúng ta sẽ xây các vật cản theo chiều ngang, ở sát bên dưới của bản đồ. Để làm được việc này, trước tiên chúng ta sẽ kéo và thả đối tượng vật cản nằm sát góc bên trái của bản đồ, như hình bên dưới:

Hình 4: Kéo đối tượng vật cản vào sát góc trái của bản đồ

Sau khi kéo đối tượng vào sát góc trái màn hình, chúng ta chuyển sang các câu lệnh thuộc nhóm Chuyển động, chúng ta dùng ngay câu lệnh (xem Hình 4). Lúc này, tọa độ của x và y chính là tọa độ của vật cản Button3.

Hình 5: Kéo vật cản ra góc bên trái của sân khấu, sau đó dùng lệnh nhảy tới x:-215 y:-167

Tới đây, chúng ta có thể dùng vòng lập 10 lần để xây các vật cản theo chiều ngang. Cách làm là chúng ta tạo ra một bản sao của vật cản tại vị trí của nó đang đứng. Sau đó, di chuyển vật cản theo chiều ngang 1 khoảng bằng chính xác với chiều ngang của nó. Rồi lại tiếp tục tạo một bản sao. Khi kết thúc quá trình tạo 10 bản sao, chúng ta chỉ cần ẩn vật cản gốc đi là có thể tạo ra 10 viên gạch theo chiều ngang. Chương trình bên dưới là 1 gợi ý:

Hình 6: Chương trình xây 10 vật cản theo chiều ngang

Lưu ý: Do chúng ta đã ẩn viên gạch gốc khi xây 10 vật cản, nên ở đầu chương trình, chúng ta cần hiện nó lại. Ở đây, mỗi lần tạo một bản sao, viên gạch gốc được dịch sang phải 48 đơn vị bằng câu lệnh thay đổi x một lượng 48.

Bài tập trên lớp: Giáo viên cho học sinh thay đổi giá trị 48 thành 40 và 60. Giải thích hiện tượng xảy ra.

Đáp án: Khi giảm xuống 40, các viên gạch bị chồng lên nhau. Khi tăng lên 60, khoảng cách giữa 2 viên gạch liên tiếp bị cách xa nhau. Do vậy, chúng ta cần tinh chỉnh giá trị này, để các viên gạch có thể được đặt sát nhau. Khi thiết kế 1 vật cản khác, chúng ta cũng cần phải xác định độ rộng này cho đúng để việc thiết kế bản đồ được sắc sảo và tinh tế.

Xây vật cản theo chiều dọc

Tiếp tục, chúng ta cần xây thêm 9 hàng vật cản nữa, mỗi hàng cũng có 10 viên gạch nằm ngang như hiện tại. Để làm được việc này, chúng ta cần đưa viên gạch lại về phía bên trái của màn hình bằng cách đặt lại tọa độ x cho nó. Tọa độ x này chính là giá trị -215 trong câu lệnh mà chúng ta đã sử dụng trong chương trình bên trên. Tiếp theo, để nâng lên một hàng, chúng ta cần tăng y 1 lượng, ví dụ là 36 đơn vị. Chương trình gợi ý như sau:

Hình 7: Chương trình xây bản đồ vật cản cho trò chơi

Lưu ý, giá trị -215 là giá trị có được khi kéo vật cản vào góc trái của màn hình. Tùy vào việc thiết kế vật cản của học sinh, mà mỗi lần thay đổi x (chiều ngang của vật cản) và mỗi lần thay đổi y (chiều cao của vật cản) cần tinh chỉnh lại cho phù hợp. Bên cạnh đó, số lượng vật cản cho mỗi lần lặp cũng cần phải thay đổi. Nếu như vật cản được thiết kế lớn hơn, thì mỗi hàng sẽ có thể chỉ cần 8 vật cản mà thôi. Tương tự như chiều cao, số lượng hàng cũng có thể thay đổi.

Bài tập về nhà

Học sinh thay thiết kế lại viên gạch cho giống với trò chơi Battle City dưới đây. Bước đầu tiên, học sinh chỉ cần thay đổi đối tượng Button3 thành 1 đối tượng khác, do học sinh tự thiết kế, có màu sắc gần giống với viên gạch.

Bai4-8.png