ScratchJr – Project 2: Đua thuyền

April 9, 2023 0 Comments

Tiếp theo nội dung ScratchJr – Project 1: Mèo đi nhặt táo (phần 2), hôm nay tôi sẽ tiếp tục giới thiệu một project mới để bạn có thêm ý tưởng tham khảo trong quá trình khám phá ScratchJr với trẻ.

Lưu ý:

  • Các nội dung tôi giới thiệu ở đây chỉ nhằm mục đích cung cấp ý tưởng tham khảo. Bạn nên xem xét tình hình thực tế của từng trẻ để linh hoạt điều chỉnh cho phù hợp;
  • Các nội dung đã giới thiệu trước đó (ví dụ thêm nhân vật, thay đổi phông nền, thêm trang) tôi sẽ không nhắc lại. Nếu cần thiết, bạn có thể quay lại các kỳ trước đó để xem hoặc comment trực tiếp vào nội dung này để tôi phản hồi khi có thể;

#1. Ý tưởng của cho ScratchJr project – Đua thuyền

Ý tưởng thiết kế của Project 2 – Đua thuyền như sau:

  • Project sẽ có 2 page: Page 1 là nơi các nhân vật bắt đầu xuất phát theo hiệu lệnh. Page 2 là nơi các nhân vật về đích;
  • Page 1 sẽ có 4 nhân vật: Nhân vật dơi – Bat sẽ làm trọng tài ra hiệu lệnh xuất phát. Các nhân vật còn lại (Nhân vật chèo thuyền – Rower, Nhân vật thuyền buồm – Boat 1 và Nhân vật tàu thủy – Boat 2) sẽ tham gia vào trò đua thuyền (phần xuất phát);
  • Page 2 sẽ có 3 nhân vật: Nhân vật dơi sẽ không có mặt trong trang này. Các nhân vật còn lại (Nhân vật chèo thuyền – Rower, Nhân vật thuyền buồm – Boat 1 và Nhân vật tàu thủy – Boat 2 sẽ tham gia vào trò đua thuyền (phần về đích);

#2. ScratchJr project – Đua thuyền – Page 1 – Bắt đầu cuộc đua

Ở Page 1, nhân vật dơi – Bat sẽ có nhiệm vụ làm trọng tài đếm và ra hiệu lệnh xuất phát “Go!” cho các nhân vật còn lại. Xen kẽ vào giữa khối lệnh Say của Looks blocks cho các con số đếm (1, 2 và 3), tôi sử dụng khối lệnh Wait của Control blocks để dễ quan sát.

bat code
bat code

Lưu ý: Con số 10 ở khối lệnh Wait là 1/10 giây – tức là tôi đang thiết kế cho nhân vật dừng 1 giây trước mỗi lần đếm.

Chuyển sang nhân vật chèo thuyền – Rower, tôi sử dụng khối lệnh Set Speed của Control Blocks và đặt ở mức thấp nhất nhằm cho nhân vật này di chuyển chậm nhất trong Page 1. Ở đây có một số điểm cần lưu ý:

  • Vì khi bắt đầu chương trình (với Green Flag), các nhân vật sẽ phải chờ nhân vật dơi đếm và ra hiệu lệnh xuất phát nên tôi sẽ cần bố trí khối lệnh Wait của Control blocks với khoảng thời gian chờ là 6 giây;
  • Mặc định nhân vật khi được lấy ra sẽ quay “mặt” về bên phải. Để thiết kế cho đẹp tôi có thể bóc một khối lệnh Move Left của Motion blocks ra sử dụng để điều chỉnh cho nhân vật quay “mặt” về bên trái sau đó vất khối lệnh này đi;
  • Ở cuối script của nhân vật này, tôi sẽ bố trí khối lệnh Go to Page của End blocks để chuyển sang Page 2. Tôi đặt khối lệnh Go to Page ở đây vì nhân vật chèo thuyền – Rower là đối tượng di chuyển chậm nhất (nếu đặt Go to Page ở script của các nhân vật di chuyển nhanh hơn tôi sẽ không quan sát được toàn bộ script của nhân vật chèo thuyền – Rower).
page 1 - rower code
page 1 – rower code

Chuyển sang nhân vật thuyền buồm – Boat 1, tôi cũng sẽ thực hiện tương tự. Điểm khác biệt ở đây là tôi sẽ:

  • Bố trí khối lệnh Set Speed của Control Blocks ở mức trung bình;
  • Ở cuối script tôi sẽ dùng khối lệnh Hide của Looks blocks để cho nhân vật biến mất (nếu không, sau khi chạy hết script, nhân này vật sẽ đứng đực mặt ra dòm ông Rower vã mồ hôi hột chèo thuyền).
page 1 - boat1 code
page 1 – boat1 code

Cuối cùng, chuyển sang nhân vật tàu thủy – Boat 2, tôi sẽ chỉ thực hiện một thay đổi nhỏ là bố trí khối lệnh Set Speed của Control Blocks ở mức cao nhất để nhân vật này hoàn tất script nhanh nhất.

page 1 - boat2 code
page 1 – boat2 code

#3. ScratchJr project – Đua thuyền – Page 2 – Về đích

Ở Page 2, để gay cấn, tôi sẽ đảo ngược tình thế cho nhân vật chèo thuyền – Rower có khối lệnh Set Speed của Control Blocks ở mức cao nhất để giành chiến thắng một cách đầy kịch tính (bạn có thể sẽ phải sáng tác ra một câu chuyện hay ho để giải thích “hiện tượng bất thường” này cho trẻ).

Và tất nhiên, vì chiến thắng nên tôi sẽ sử dụng khối lệnh Say của Looks blocks để cho nhân vật Rower gáy (“Yes! I win!“) sau khi phải è cổ chèo thuyền suốt cả 2 cảnh.

page 2 - rower code
page 2 – rower code

Ở Page 2, nhân vật thuyền buồm – Boat 1 vẫn giữ phong độ với khối lệnh Set Speed như cũ (và tôi cũng không cần khối lệnh Hide của Looks blocks).

page 2 - boat1 code
page 2 – boat1 code

Cuối cùng, với nhân vật tàu thủy – Boat 2, vì lí do nào đó (ví dụ lạc đường), nhân vật này không về đích ở cầu cảng mà sẽ lang thang đâu đó ngoài biển mãi mãi với khối lệnh Set Speed ở mức thấp nhất và khối lệnh Repeat Forever của End blocks.

page 2 - boat2 code
page 2 – boat2 code

#4. Test ScratchJr project

Sau khi bày bình bố trận xong, tôi sẽ có thể phóng to màn hình và chơi trò đua thuyền cũng như “dự đoán” kết quả cùng với trẻ.

Để sôi động hơn, bạn có thể để trẻ tự thay đổi giá trị khối lệnh Set Speed của các nhân vật sau mỗi lần chạy sau đó dự đoán kết quả và kiểm chứng.

One thought on “ScratchJr – Project 2: Đua thuyền”

Leave a Reply

Your email address will not be published. Required fields are marked *