Cách làm game oẳn tù tì trên Scratch

Oẳn tù tì là trò chơi rất được trẻ em yêu thích. Và bạn hoàn toàn có thể hướng dẫn trẻ làm game oẳn tù tì trên Scratch.

1. Xây dựng nhân vật và bối cảnh

Bắt đầu bằng cách chọn 2 sprite (nhân vật). Một sprite đại diện cho người chơi, sprite khác đại diện cho máy tính. Sau khi chọn 2 sprite, bạn cũng nên chọn cả bối cảnh (background).

Tạo bối ảnh cho nhân vật trong Scratch

2. Tạo biến

Tiếp theo, tạo một vài biến để theo dõi thông tin quan trọng trong game. Cụ thể ở đây bao gồm cả lựa chọn của người chơi và máy tính. Điều đó có nghĩa chúng ta cần tạo tổng tất cả 4 biến. Cách làm việc này như sau: tới danh mục Variables và click nút Make a Variable. Khi làm việc này, đảm bảo đã click For all sprites. Dưới đây là ví dụ cho một trong số các biến mang tên Player’s choice.

Biến mới

Sau khi tạo đủ 4 biến, màn hình sẽ trông như sau:

Tạo biến cho game trên Scratch

3. Reset biến sang 0 ở mỗi vòng

Reset biến về 0

Nhằm đảm bảo các biến được reset về 0 ở mỗi vòng, bạn cần thêm code này vào trong sprite của người chơi:

4. Cho phép người chơi đưa ra lựa chọn

Sau khi đã hoàn tất thiết lập nhân vật và các biến, giờ bạn bắt đầu code nhân vật người chơi. Nếu nhìn vào bảng bên dưới, bạn sẽ thấy việc người chơi cần làm khi muốn chọn ra đấm, lá hay kéo. Nếu chọn đấm (rock), họ cần nhấn phim R ở trên bàn phím và ví dụ đặt biến Player’s Choice bằng 1. Nếu muốn ra lá (paper), họ cần nhấn phím P và biến Player’s Choice sẽ bằng 2. Cuối cùng, nếu chọn kéo, họ cần nhấn phím S, lúc này, Player’s Choice sẽ là 3.

Bảng biến cho game trên Scratch

Đảm bảo bạn đã hiểu bảng trên trước khi tiếp tục.

Làm thế nào để biết khi nào người chơi nhấn một phím? Rất đơn giản, chúng ta sẽ dùng 3 khối if-then từ danh mục control và khối nhấn phím cách từ danh mục sensing. Mỗi khối if-then sẽ nhận diện hành động nhấn phím của người chơi. Sau khi đã có tất cả 3 khối if-then, đừng quên thêm một khối forever bao quanh tất cả bởi chúng ta cần game kiểm tra thường xuyên hành động nhấn phím. Bên trong mỗi khối if-then, bạn cần đặt giá trị chính xác cho Player’s Choice. Code sẽ trông như sau:

Bảng biến cho người chơi trên Scratch

Bạn cũng có thể tăng thêm chút thú vị cho game bằng cách làm cho nhân vật nói điều gì đó bất cứ khi nào người chơi đưa ra lựa chọn. Code của bạn có thể trông giống như sau:

Code game trên Scratch

5. Lập trình máy tính lựa chọn ra đấm, lá hay kéo

Tiếp theo, tới máy tính cũng phải đưa ra lựa chọn. Có thể, bạn đang băn khoăn tự hỏi tại sao không thiết kế AI và người chơi cùng đưa ra lựa chọn cùng nhau nhưng làm như thế dễ khiến thứ tự sự kiện bị lộn xộn. Và chắc chắn bạn không muốn AI tiết lộ lựa chọn trước người chơi phải không?

Để đảm bảo máy tính biết khi nào tới lượt chơi của nó, chúng ta sẽ tạo một thông báo. Bạn sẽ tìm thấy khối cần thiết này ở danh mục events. Chọn và kéo một khối broadcast message1 vào từng khối if-then. Đảm bảo tạo một thông báo mới và gọi nó là player made choice. Code giờ sẽ giống như sau:

Lập trình AI đưa ra lựa chọn

Tiếp theo, AI phải có khả năng nhận được thông báo đó nên chúng ta cần một khối từ danh mục sự kiện. Lúc này, chúng ta cần khối “when I receive”. Khối này sẽ kích hoạt code của máy tính sau khi người chơi đưa ra lựa chọn. Code của bạn cho máy tính sẽ trông như sau:

Hoàn tất lập trình AI nhận biết thời gian đưa ra lựa chọn

6. Làm máy tính chọn đấm, lá hoặc kéo

Khi máy tính đã biết khi nào tới lượt chọn của nó, bạn phải thêm code để nó thực sự có thể đưa ra lựa chọn đấm, lá hoặc kéo. Vì máy tính không thể tự suy nghĩ, nên bạn phải lập trình nó đưa ra lựa chọn ngẫu nhiên. Để làm việc đó, bạn cần khối “pick random” từ mục Operators. Hành động này cho phép máy tính chọn một số ngẫu nhiên tương ứng với kéo, lá búa. Kết quả như sau:

Cách làm game trên Scratch

Bạn có thể khiến việc máy tính đưa ra lựa chọn trở nên thú vị hơn bằng cách để nó nói to điều đó. Ví dụ, nếu computer’s choice là 1, máy tính nói Rock!; nếu nó là 2, máy tính nói Paper!, nếu là 3, máy tính nói Scissors! Dùng khối “=” từ mục Operators với khối if-then để nhận diện giá trị ngang bằng nhau.

Code của bạn cho máy tính giờ sẽ trông như thế này:

Code cho nhân vật máy tính

7. Tính toán điểm số

Tính toán điểm số để xác định người chơi hay máy tính là người thắng cuộc trong game Oẳn tù tì trên Scratch.

Bảng tính những kết quả có thể xảy ra

Dựa theo bảng phân tích trên, code game trong Scratch sẽ như sau:

Code tính điểm số cho game trong Scratch

Chúng ta sẽ tạo 3 lệnh điều kiện if-then, tương ứng với từng lựa chọn của người chơi.

Chúng ta sẽ tiếp tục quá trình này bằng cách thêm 3 lệnh if-then vào lệnh điều kiện để kiểm tra xem Computer’s Choice bằng 2 (Paper) hoặc 3 (Scissors).

Code game Scratch

8. Giành chiến thắng hoặc thua game

Cuối cùng, bạn có thể kết thúc game Oẳn tù tì nếu điểm số của người chơi hoặc máy tính đạt tới điểm số mục tiêu. Ở ví dụ này, chúng ta sẽ dùng điểm số mục tiêu là 5, nhưng bạn có thể tùy biến con số này tùy thuộc vào thời gian muốn game tiếp tục.

Đầu tiên, tạo backdrop bạn sẽ sử dụng, một nếu người chơi chiến thắng và một khi máy tính chiến thắng.

Sau khi code tính toán điểm số bằng cách xác định người đạt tới điểm đó, bạn sẽ để máy tính kiểm tra xem ai là người đạt tới mục tiêu trước. Nếu số điểm của cả người chơi và máy tính đều bằng 5, chuyển backdrop và dừng code.

Code tính điểm số thắng cuộc trong game

Đừng quên chuyển backdrop ngược lại phông nền không có text khi bạn click lá cờ màu xanh lá.

Code chuyển backdrop

Thoải mái thêm nhiều tính năng khác cho game này, chẳng hạn như nhạc nền, hoạt ảnh cho nhân vật, thậm chí tạo phiên bản 2 người chơi…

Trên đây là cách làm game Oẳn tù tì đơn giản trên Scratch. Hi vọng bài viết hữu ích với các bạn.

  • 466 lượt xem
👨 Vy Vy Cập nhật: 04/04/2024
Xem thêm: Scratch
Sắp xếp theo