viết chương trình scratch tạo trò chơi mèo đuổi chuột , người chơi nháy chuột tớ…
Trước hết, các em hãy mở phần mềm Scratch lên nào. Chúng ta sẽ bắt đầu xây dựng trò chơi của mình.
Bước 1: Chuẩn bị các nhân vật
1. Chọn phông nền: Các em vào mục “Phông nền” (Stage) ở góc dưới bên phải màn hình, chọn một phông nền phù hợp cho trò chơi, ví dụ như “Blue Sky” hoặc “Grass”.
2. Thêm nhân vật Mèo:
* Nhấn vào biểu tượng “Chọn một nhân vật” (Choose a Sprite) ở góc dưới bên phải.
* Tìm và chọn nhân vật “Cat” (Mèo).
3. Thêm nhân vật Chuột:
* Nhấn lại vào biểu tượng “Chọn một nhân vật” (Choose a Sprite).
* Tìm và chọn nhân vật “Mouse” (Chuột).
4. Thêm nhân vật Chó (để hiển thị thông báo):
* Nhấn lại vào biểu tượng “Chọn một nhân vật” (Choose a Sprite).
* Tìm và chọn nhân vật “Dog” (Chó). Chúng ta sẽ dùng con chó này để hiển thị thông báo “Bắt được rồi” chứ không cho nó tham gia đuổi bắt.
Bước 2: Lập trình cho nhân vật Chuột
Nhân vật chuột của chúng ta sẽ di chuyển theo con trỏ chuột khi người chơi nháy chuột.
1. Chọn nhân vật Chuột trên danh sách nhân vật.
2. Khối lệnh bắt đầu trò chơi:
* Kéo khối lệnh \(when green flag clicked\) (khi bấm vào lá cờ xanh) từ nhóm “Sự kiện” (Events).
3. Khối lệnh di chuyển theo con trỏ chuột:
* Kéo khối lệnh \(forever\) (lặp mãi) từ nhóm “Điều khiển” (Control).
* Bên trong \(forever\), kéo khối lệnh \(go to [mouse-pointer]\) (đi tới [con trỏ chuột]) từ nhóm “Chuyển động” (Motion).
* Sau đó, kéo khối lệnh \(on mouse down\) (khi nhấn chuột) từ nhóm “Sự kiện” (Events) và đặt nó BÊN NGOÀI khối lệnh \(forever\). Điều này có nghĩa là chuột chỉ chạy khi chúng ta nhấn chuột.
* Lưu ý quan trọng: Yêu cầu đề bài là “người chơi nháy chuột tới đâu thì chuột chạy ngay tới đó”. Cách hiểu phổ biến nhất của yêu cầu này trong Scratch là khi người chơi nhấn chuột vào một vị trí bất kỳ, thì chuột sẽ di chuyển tới vị trí đó. Tuy nhiên, nếu chúng ta dùng \(go to [mouse-pointer]\) bên trong \(forever\) và \(on mouse down\), thì chuột sẽ luôn di chuyển tới vị trí con trỏ chuột. Để chuột di chuyển tới vị trí NHẤP CHUỘT, chúng ta cần một chút điều chỉnh.
* Cách điều chỉnh để chuột chạy tới điểm nhấp chuột:
* Xóa khối lệnh \(go to [mouse-pointer]\) bên trong \(forever\).
* Bên trong \(forever\), kéo khối lệnh \(if <> then\) (nếu <> thì) từ nhóm “Điều khiển” (Control).
* Bên trong điều kiện \(if\), kéo khối lệnh \(mouse down?\) (có đang nhấn chuột?) từ nhóm “Cảm biến” (Sensing).
* Bên trong khối \(then\), kéo khối lệnh \(go to x: () y: ()\) (đi tới x: () y: ()) từ nhóm “Chuyển động” (Motion).
* Để lấy tọa độ mà người chơi vừa nhấp chuột, chúng ta dùng khối lệnh \(mouse x\) (vị trí x của con trỏ chuột) và \(mouse y\) (vị trí y của con trỏ chuột) từ nhóm “Cảm biến” (Sensing). Kéo các khối này vào ô x: và y: của lệnh \(go to x: () y: ()\).
* Vậy là chuột sẽ chạy tới vị trí bạn nhấp chuột!
Bước 3: Lập trình cho nhân vật Mèo
Nhân vật mèo sẽ đi theo chuột.
1. Chọn nhân vật Mèo trên danh sách nhân vật.
2. Khối lệnh bắt đầu trò chơi:
* Kéo khối lệnh \(when green flag clicked\) (khi bấm vào lá cờ xanh) từ nhóm “Sự kiện” (Events).
3. Khối lệnh đi theo chuột:
* Kéo khối lệnh \(forever\) (lặp mãi) từ nhóm “Điều khiển” (Control).
* Bên trong \(forever\), kéo khối lệnh \(point towards [Mouse]\) (hướng về [Chuột]) từ nhóm “Chuyển động” (Motion).
* Tiếp theo, kéo khối lệnh \(move () steps\) (di chuyển () bước) từ nhóm “Chuyển động” (Motion). Chúng ta sẽ đặt số bước di chuyển là \(5\) hoặc \(7\) để mèo đuổi kịp chuột một cách hợp lý. Các em có thể tự thử nghiệm để chọn con số phù hợp nhất.
Bước 4: Lập trình cho điều kiện “Bắt được rồi” và kết thúc
Khi mèo chạm vào chuột, trò chơi sẽ dừng lại và hiển thị thông báo.
1. Chọn nhân vật Mèo (hoặc Chuột, tùy ý em, nhưng Mèo sẽ tiện hơn vì nó đang di chuyển).
2. Khối lệnh kiểm tra va chạm:
* Bên trong khối lệnh \(forever\) của nhân vật Mèo (đang lặp mãi), chúng ta sẽ thêm một lệnh kiểm tra.
* Kéo khối lệnh \(if <> then\) (nếu <> thì) từ nhóm “Điều khiển” (Control).
* Bên trong điều kiện \(if\), kéo khối lệnh \(touching [Mouse]?\) (chạm vào [Chuột]?) từ nhóm “Cảm biến” (Sensing).
3. Khối lệnh hiển thị thông báo và kết thúc:
* Bên trong khối \(then\) của lệnh \(if\) vừa tạo:
* Kéo khối lệnh \(say [Hello!] for () secs\) (nói [Xin chào!] trong () giây) từ nhóm “Ngoại hình” (Looks). Thay “Hello!” thành “Bắt được rồi!”. Đặt số giây là \(2\) hoặc \(3\).
* Kéo khối lệnh \(stop [all]\) (dừng [tất cả]) từ nhóm “Điều khiển” (Control). Khối này sẽ làm cho toàn bộ trò chơi dừng lại.
Bước 5: Lập trình cho nhân vật Chó (hiển thị thông báo)**
Chúng ta sẽ dùng con chó để làm cho thông báo “Bắt được rồi!” xuất hiện rõ ràng hơn.
1. Chọn nhân vật Chó trên danh sách nhân vật.
2. Khối lệnh bắt đầu trò chơi:**
* Kéo khối lệnh \(when green flag clicked\) (khi bấm vào lá cờ xanh) từ nhóm “Sự kiện” (Events).
* Kéo khối lệnh \(hide\) (ẩn đi) từ nhóm “Ngoại hình” (Looks). Mục đích là ban đầu chó sẽ ẩn đi, chỉ xuất hiện khi Mèo bắt được Chuột.
3. Khối lệnh hiển thị thông báo:**
* Chúng ta cần làm cho Chó hiển thị thông báo khi Mèo bắt được Chuột. Cách đơn giản nhất là dùng “Thông báo” (Broadcast).
* Trong nhân vật Mèo, sau khi kéo lệnh \(say “Bắt được rồi!”\) và trước lệnh \(stop all\), chúng ta sẽ thêm:
* Kéo khối lệnh \(broadcast [message1]\) (phát tin [message1]) từ nhóm “Sự kiện” (Events).
* Nhấn vào \(message1\) và chọn “New message” (Tin mới), gõ vào tên tin là “Bắt rồi”.
* Bây giờ, quay lại nhân vật Chó:
* Kéo khối lệnh \(when I receive [Bắt rồi]\) (khi nhận được [Bắt rồi]) từ nhóm “Sự kiện” (Events).
* Bên dưới khối lệnh này, kéo khối lệnh \(show\) (hiện lên) từ nhóm “Ngoại hình” (Looks).
* Tiếp theo, kéo khối lệnh \(say [Bắt được rồi!] for () secs\) (nói [Bắt được rồi!] trong () giây) từ nhóm “Ngoại hình” (Looks). Đặt thời gian khoảng 2 giây.
* Sau khi thông báo hiện ra, chúng ta có thể cho chó ẩn đi lại hoặc để nó đứng yên. Nếu muốn nó ẩn đi sau khi nói, thêm lệnh \(hide\) sau lệnh \(say\).
Tổng kết các khối lệnh chính cho từng nhân vật:
* Nhân vật Chuột:
* \(when green flag clicked\)
* \(forever\)
* \(if
* \(go to x: (mouse x) y: (mouse y)\)
* Nhân vật Mèo:
* \(when green flag clicked\)
* \(forever\)
* \(point towards [Mouse]\)
* \(move (7) steps\) (thay 7 bằng số bước phù hợp)
* \(if
* \(say [Bắt được rồi!] for (2) secs\)
* \(broadcast [Bắt rồi]\)
* \(stop [all]\)
* Nhân vật Chó:
* \(when green flag clicked\)
* \(hide\)
* \(when I receive [Bắt rồi]\)
* \(show\)
* \(say [Bắt được rồi!] for (2) secs\)
* (Tùy chọn: \(hide\))
Bước 6: Chạy thử và điều chỉnh
Bây giờ, các em hãy bấm vào lá cờ xanh để chạy thử trò chơi!
* Di chuyển chuột và thử nhấp chuột xem Chuột có chạy theo đúng ý mình không.
* Di chuyển con trỏ chuột đến gần Mèo để Mèo bắt đầu đuổi theo Chuột.
* Quan sát xem khi Mèo chạm vào Chuột thì thông báo “Bắt được rồi!” có xuất hiện và trò chơi có dừng lại không.
Nếu cảm thấy Mèo đuổi chưa kịp hoặc quá nhanh, các em có thể điều chỉnh số bước di chuyển của Mèo ở khối lệnh \(move () steps\).
Chúc mừng các em đã hoàn thành trò chơi “Mèo đuổi chuột” theo đúng yêu cầu của đề bài! Các em có thể sáng tạo thêm bằng cách thêm âm thanh, thêm nhiều chuột, hoặc thêm vật cản nữa nhé. Thầy luôn sẵn sàng giải đáp mọi thắc mắc của các em!
*Ảnh (ảnh 1 là mèo ảnh 2 là chuột):
Code của “Cat” ở hình \(1\)
Code của “Mouse” ở hình \(2\)
Trang phục của phông nền ở hình \(3\)