Cách làm game bóng rổ trên Scratch

  • 1 Đánh giá

Tạo game bóng rổ bằng Scratch không khó. Dưới đây là hướng dẫn từng bước cách tạo game bóng rổ trên Scratch.

Làm game bóng rổ trong Scratch

Nhìn chung, khối lệnh “wait () seconds” sẽ đảm nhiệm phần thời gian cho việc chuyển đổi tùy chỉnh và chuyền bóng. Khối “go to x and y” sẽ xử lý vị trí của quả bóng, và các khối lệnh  “switch custom to” khác nhau sẽ xử lý diện mạo tổng thể, cử chỉ và ngôn ngữ cơ thể của các nhân vật người chơi. Và giống như trong một trận bóng rổ thực sự, việc lập chiến lược cho bước đi tiếp theo rất quan trọng. Do đó, các khối “broadcast message”“when I receive message” sẽ giúp xác định lượt chơi của ai.

Bước 1: Chọn sprite - nhân vật và kích thước

Chọn ba hình ảnh cầu thủ bóng rổ (Andie, Jamal và Dorian) cùng với hình ảnh quả bóng rổ và tự điều chỉnh kích thước thành 70% cho ba cầu thủ và 40% cho quả bóng.

Chọn nhân vật

Bước 2: Chọn phông nền

Click "Choose a backdrop" ở góc dưới bên phải màn hình. Bạn có thể tìm kiếm phông nền trong ô tìm kiếm hoặc nhấp vào danh mục thể thao để chọn phông nền Basketball 2.

Chọn backdrop

Bước 3: Tùy chỉnh nhân vật - xóa bóng

Trong tab trang phục của mỗi hình ảnh nhân vật, hãy xóa quả bóng khỏi trang phục của họ. Để xóa quả bóng, chỉ cần nhấp vào nó và nhấn phím Backspace hoặc biểu tượng thùng rác để xóa. Bạn luôn có thể nhấp vào mũi tên hoàn tác nếu bạn muốn sửa lại.

Tùy chỉnh nhân vật

Bước 4: Tùy chỉnh sprite - sao chép và chỉnh sửa

Sao chép trang phục của Dorian bằng cách chọn dorian-c từ menu bên trái, nhấp chuột phải và chọn “duplicate” từ các tùy chọn. Sau đó, di chuyển cánh tay của nhân vật lên để chúng ta có thể sử dụng trang phục đó tạo hiệu ứng hoạt hình cho sự phấn khích của nhân vật khi đội ghi bàn. Để xoay cánh tay, hãy nhấp vào đó và tìm mũi tên kép cong bên dưới khung chọn.

Tùy chỉnh nhân vật trong Scratch

Bước 5: Vị trí ban đầu của quả bóng

Giờ là lúc bắt đầu lập trình. Bắt đầu với hình ảnh quả bóng, nhưng trước tiên, hãy nhấp vào trang phục Dorian và đặt quả bóng vào tay Dorian. Thực hiện bằng cách nhấp và kéo quả bóng rổ đến vị trí mong muốn. Sau đó, thiết lập vị trí của quả bóng (điểm x và y) để luôn ở đó khi nhấp vào cờ xanh. Sử dụng khối lệnh "go to x: _ and y: _" để làm điều này. Ví dụ cần quả bóng ở đó khoảng một giây rưỡi trước khi Dorian chuyền cho Andie. Ở đây sẽ sử dụng khối lệnh "wait 1 second" để làm điều này. Thay đổi nó thành 1,5 giây thay vì chỉ 1 giây.

Vị trí ban đầu của quả bóng

Bước 6: Vị trí tiếp theo của quả bóng

Đổi trang phục của Andie thành andie-a, và điều chỉnh vị trí quả bóng sao cho nó nằm trong tay phải của Andie bằng cách nhấp và kéo nó. Thao tác lập trình này để quả bóng được chuyền (lướt) từ Dorian sang Andie. Tại đây,khối lệnh glide _ secs to x: _ y:_ được sử dụng. Nếu bạn di chuyển quả bóng trước khi lấy mã, các giá trị x và y sẽ tự động khớp với vị trí mới của quả bóng!

Vị trí quả bóng tiếp theo

Bước 7: Làm nhân vật Andie đổi tay

Bước tiếp theo là để Andie thể hiện kỹ năng của mình bằng cách chuyển bóng từ tay này sang tay kia. Chúng ta sẽ sử dụng thông báo phát sóng và khối chờ.

Làm nhân vật chuyền bóng

Bước 8: Gửi thông báo đầu tiên

Bây giờ chúng ta cần lập trình cho nhân vật Andie thực hiện hai việc:

  • Chuyển quả bóng sang tay trái
  • Chuyền bóng cho Jamal.

Việc này có thể được thực hiện ngay khi Andie nhận được “message1”  từ bước trước. Hơn nữa, chúng ta sẽ phát đi một thông báo khác (gọi là thông báo 2), thông báo này sẽ kích hoạt việc chuyển quả bóng từ tay phải sang tay trái của Andie.

Gửi thông báo đầu tiên

Bước 9: Gửi thông báo thứ hai

Hãy thử chạy trò chơi của bạn. Bạn sẽ thấy Andie giờ đã giơ tay trái lên. Di chuyển quả bóng đến tay anh ấy bằng cách nhấp và kéo. Sau đó, sử dụng lệnh glide _ secs to x:_ y:_  để di chuyển quả bóng đến tọa độ x:_ y:_. Hãy nhớ, nếu bạn di chuyển quả bóng trước khi chọn lệnh, nó sẽ tự động có các số chính xác! Sau đó, việc còn lại cần làm là để Andie chuyền bóng cho Jamal.

Thông báo thứ hai

Bước 10: Thông báo thứ hai hoạt động

Đã đến lúc Jamal bắt bóng. Theo tư thế của Jamal, hãy chọn jamal-a để có thể đặt bóng vào vị trí tay của cậu ấy. Thời gian chờ sẽ tăng thêm 0.5 giây cũng như khối trượt để bóng có thể trượt vào tay Jamal. Chúng ta cũng cần chuẩn bị cho Jamal cho thông điệp 2 – cậu ấy sẽ vào tư thế bắt bóng, đó là tư thế jamal-a.

Nhiệm vụ của thông báo thứ hai

Tạo hành động cho nhân vật

Bước 11: Message2, thêm nhiều bước hơn

Hãy sử dụng trang phục jamal-c để ném bóng, tuy nhiên, trước tiên hãy chỉnh sửa cánh tay của cậu ấy. Làm cho hai cánh tay trông gần nhau hơn. Ví dụ đã làm điều này cho Dorian ở Bước 4. Ngoài ra, chúng ta cần Jamal chuyển sang trang phục này đúng lúc, vì vậy một khối chờ ở giữa được thêm vào.

Thêm nhiều bước hơn vào bước 2

Code game

Bước 12: Chuẩn bị ghi điểm

Chúng ta sẽ tiếp tục bổ sung vào chuỗi lập trình cho quả bóng rổ. Ở bước này, chúng ta cần đặt quả bóng giữa hai tay của Jamal và thêm một lệnh tạm dừng bằng khối chờ (wait block), và một khối lệnh chuyển động “đi đến” (go to).

Chuẩn bị ghi điểm

Bước 13: Các bước ghi điểm

Bạn cần làm cho Jamal trông như đang ném bóng vào rổ. Đặt quả bóng ở phía trên rổ bóng, sau đó thêm khối lệnh trượt (glide block) vào chuỗi lập trình. Tiếp theo, đặt quả bóng ở phía dưới rổ, và lại thêm một khối lệnh trượt nữa. Tại thời điểm đó, chúng ta cần phát đi một thông điệp khác sẽ kích hoạt cả ba hình ảnh nhân vật người chơi ăn mừng bằng cách giơ tay lên trời và nhảy lên xuống. Thông điệp này là: message3.

Code lập trình

Bước 14: Chuẩn bị tạo hiệu ứng chuyển động phấn khích

Jamal, Dorian và Andie sẽ đổi trang phục khi nhận được tin nhắn 3, nhưng bạn cũng cần tạo hiệu ứng chuyển động cho Jamal và Dorian khi họ nhảy lên xuống. Để làm điều này, sử dụng cùng một khái niệm như đã làm với quả bóng – chúng ta sẽ di chuyển các sprite lên xuống thủ công để lấy vị trí x và y trong khối trượt. Một lần nữa, hãy chắc chắn di chuyển chúng trước rồi mới đặt khối trượt để bạn không phải nhập thủ công vị trí x và y!

Điều duy nhất cần khác biệt là thời gian các sprite trượt. Một giây là quá lâu, để làm cho việc nhảy trông thực tế hơn một chút, bạn sẽ lặp lại quá trình này 10 lần cho cả Jamal và Dorian. Để lặp lại 10 lần, hãy sử dụng vòng lặp lặp lại 10 từ danh mục điều khiển.

Tạo hiệu ứng chuyển động

Bước 15: Giữ trang phục ổn định

Có vẻ như các bước cuối cùng của việc chuyển đổi tùy chỉnh vẫn giữ nguyên, phải không? Điều này phần nào làm ảnh hưởng đến cách hoạt động của các sprite khi muốn thấy chúng chuyền bóng, v.v. Nó dường như không đúng. Đây là một lỗi dễ khắc phục.

Đối với mỗi sprite, sử dụng sự kiện “when the green flag is clicked” để gán trang phục phù hợp cho chúng nhằm tạo hiệu ứng chuyển tiếp mượt mà hơn.

Giữ trang phục ổn định

Bước 16: Phát sóng thông điệp thứ 3 và cuối cùng

Hoạt động này cần điều chỉnh trang phục khi mỗi sprite nhận được thông điệp. Thực hiện điều này cho tất cả các sprite dưới mỗi thông điệp được phát sóng.

Thông điệp cuối cùng

Bước 17: Thêm biến điểm số

Bây giờ chỉ còn thiếu điểm số của trận bóng rổ. Click Variables > Make a Variable.  Đặt tên là Score và để nút được chọn cho tất cả các sprite.

Thêm biến ghi điểm số

Bước 18: Lập trình điểm số bằng cách sử dụng điều kiện và toán tử toán học

Thêm hai điểm khi bóng chạm sàn. Thực hiện điều này bằng cách thay đổi biến điểm số thành 2. Đoạn mã này được đặt sau khối “glide” cuối cùng mà chúng ta đã sử dụng cho quả bóng rổ. Ở ví dụ này, đó là x=-81 và y=-144. Sử dụng khối điều kiện if/then cũng như các khối phép toán ‘=’ và ‘and’.

Code game bóng rổ trên Scratch

Bước 19: Đặt lại điểm số

Khi kiểm tra game bóng rổ vừa tạo, bạn có thể nhận thấy rằng điểm số cứ tiếp tục được cộng vào bất kể bạn bắt đầu lại trò chơi bao nhiêu lần. Điều này rất dễ khắc phục. Hãy đặt lại điểm số về 0 ngay từ đầu trò chơi, tức là khi lá cờ xanh được nhấp vào. Đây là một cách làm tốt cho tất cả các biến mà bạn sẽ sử dụng trong chương trình.

Reset lại điểm số

Bạn nên đặt giá trị cho biến trước khi sử dụng biến đó. Trong chương trình này, bạn có thể làm điều này với bất kỳ đối tượng nào, nhưng chúng ta nên tập trung vào quả bóng vì điểm số được cộng vào khi quả bóng nằm trên mặt đất.

Cập nhật: 03/02/2026
  • lượt xem
Xem thêm: Scratch