Cùng bé lập trình Scratch

Trò chơi "Đua ngựa" (bài 36)

24/01/2014 09:44

Trong bước tiếp theo để tạo trò chơi đua ngựa, bạn và bé cần lập trình cho ngựa đỏ và ngựa xanh di chuyển mỗi khi "gieo súc sắc".

Bạn đã lập trình cho Sân khấu thực hiện việc "gieo súc sắc" và thay đổi hai biến ngua do (ngựa đỏ) và ngua xanh (ngựa xanh) một cách thích hợp. Việc kết thúc trò chơi (khi một trong hai biến nói trên có trị số bằng hoặc vượt quá 40) cũng đã được tính đến.

Vấn đề tiếp theo là lập trình cho nhân vật gắn với một ô của đường đua biết cách chuyển đổi hình dạng mỗi khi nhận được thông báo của Sân khấu.

Bạn thử hình dung những việc mà Nhân vật1 (nhân vật gắn với ô đầu tiên của đường đua) phải làm khi nhận được thông báo do (đỏ). Khi đó, Nhân vật1 biết rằng biến ngua do vừa thay đổi, nên cần xem ngay biến ngua do có trị số trùng với số thứ tự của mình hay không. Nếu trùng thì chuyển qua hình dạng ngựa đỏ. Trước khi chuyển qua hình dạng ngựa đỏ, Nhân vật1 phải lưu ý hình dạng hiện tại của nó. Nếu đó là hình dạng ngựa xanh, ta có trường hợp hình dạng ngựa xanh bị thay thế bằng hình dạng ngựa đỏ. Với trường hợp như vậy, phải làm cho biến ngua xanh trở về trị số 0 (ngựa xanh bị "đá" về chuồng).

Trong trường hợp biến ngua do không trùng với số thứ tự của Nhân vật1, Nhân vật1 phải xét xem nên chọn hình dạng nào, hình dạng ngựa xanh hoặc hình dạng trống rỗng. Để quyết định chọn hình dạng thích hợp, Nhân vật1 chỉ cần xem biến ngua xanh có trị số trùng với số thứ tự của mình hay không.

Hoàn toàn tương tự, bạn hình dung được ngay những việc mà Nhân vật1 phải làm khi nhận được thông báo xanh (biến ngua xanh vừa thay đổi).

Hình sau thể hiện kịch bản của Nhân vật1, diễn đạt "suy nghĩ" và "hành động" của Nhân vật1 khi nhận được thông báo từ Sân khấu.

Để cho sinh động, bạn có thể dùng thẻ Chơi âm thanh để phát ra âm thanh gì đó khi một chú ngựa bị đá về chuồng, tiếng ngựa hí (horse whinny) chẳng hạn.

Kịch bản cho nhân vật gắn với ô bất kỳ trong đường đua không khác chi Nhân vật1, ngoại trừ số thứ tự (số thứ tự của nhân vật phải phù hợp với vị trí của nó). Bạn chỉ cần sao chép Nhân vật1, gắn vào từng ô của đường đua và nhớ sửa đổi số thứ tự của bản sao. Trước khi sao chép, bạn kiểm tra thật kỹ kịch bản của Nhân vật1, rồi bấm nút Lưu. Nếu không, một kịch bản sai sẽ được sao chép thành hàng chục kịch bản sai (quá mệt!).

Để sao chép, bạn bấm-phải vào Nhân vật1 trong sân khấu, chọn mục Tạo bản sao trong trình đơn vừa hiện ra. Bạn có ngay bản sao gắn với con trỏ chuột. Bạn di chuyển chuột để bản sao thật khớp với ô thứ hai của đường đua và bấm chuột một phát để đặt bản sao vào chỗ. Bản sao tự động có tên là Nhân vật2.

Lúc đó, nhân vật đang được chọn trong khung nhân vật vẫn là Nhân vật1. Bạn bấm kép vào bản sao trong sân khấu để chọn Nhân vật2. Nhìn qua khung kịch bản của Nhân vật2, bạn bấm vào ô có số 1 trong thẻ Đặt so thu tu là 1, gõ số 2 (sửa 1 thành 2).

Để có nhân vật gắn với ô thứ ba của đường đua, bạn bấm-phải vào nhân vật ở ô thứ hai, chọn mục Tạo bản sao, lặp lại thao tác tương tự như trên. Cứ thế, bạn dần dần lấp đầy các ô của đường đua bằng những nhân vật biết "suy nghĩ" và "hành động" như hình sau.

Bạn nên hướng dẫn bé thao tác "lắp ráp đường đua" như vừa nêu. Bạn và bé luân phiên thực hiện việc đó cho... đỡ chán. Khi sửa số thứ tự của bản sao vừa tạo ra, có thể bạn quên mất, không nhớ phải gõ số mấy. Lúc đó, bạn chỉ cần nhìn phía trên khung kịch bản để xem tên của bản sao. Nếu tên của bản sao là Nhân vật20 chẳng hạn, bạn phải gõ số 20 trong thẻ Đặt so thu tu.

Khi hoàn tất việc lắp ráp đường đua, bạn và bé có thể bấm nút "cờ xanh" để bắt đầu ngay cuộc chơi. Để "gieo súc sắc", bạn gõ phím A, bé gõ phím L (luân phiên chứ không đồng thời đâu nhé). Dĩ nhiên, phải "oản tù tì" để xác định người đi trước. Với trò chơi này, ai bị "đá" thì... ráng chịu vì kịch bản không tính đến chuyện "xí xóa".

NGỌC GIAO

Bài liên quan:
Ý kiến bạn đọc (0)
Tên   Email

Lên đầu trang