Scratch làm game ô ăn quan

0

Scratch làm game ô ăn quan

1. Ô ăn quan – trò chơi rèn luyện trí thông minh

Ô ăn quan là trò chơi dân gian quen thuộc, hấp dẫn, gắn liền với tuổi thơ của nhiều người. Trò chơi không chỉ mang ý nghĩa giải trí mà còn giúp rèn luyện trí thông minh thông qua việc phải suy nghĩ chiến thuật để thắng cuộc.

2. Cách chơi ô ăn quan

(nguồn: https://vi.wikipedia.org/wiki/%C3%94_%C4%83n_quan)

2.1. Chuẩn bị:

– Bàn chơi ô ăn quan: Bàn chơi được kẻ thành một hình chữ nhật rồi chia hình chữ nhật đó thành mười ô vuông, mỗi bên có năm ô đối xứng nhau. Ở hai cạnh ngắn hơn của hình chữ nhật, kẻ hai ô hình bán nguyệt hoặc hình vòng cung hướng ra phía ngoài. Các ô hình vuông gọi là ô dân còn hai ô hình bán nguyệt hoặc vòng cung gọi là ô quan.

Bàn chơi ô ăn quan

Bàn chơi ô ăn quan

– Quân chơi: Quân chơi trong trò chơi ô ăn quan gồm hai loại quan và dân, được làm hoặc thu thập từ nhiều chất liệu có hình thể ổn định, kích thước vừa phải để người chơi có thể cầm, nắm nhiều quân bằng một bàn tay khi chơi như viên sỏi, gạch, đá, hạt của một số loại quả… 

Quan có kích thước lớn hơn dân đáng kể cho dễ phân biệt với nhau. Quan được đặt trong hai ô hình bán nguyệt hoặc cánh cung, mỗi ô một quân.Số lượng quan luôn là 2. Giá trị quy đổi tùy người chơi, thường là 1 quan bằng 10 dân.

Dân được bố trí vào các ô vuông với số quân đều nhau, thường là mỗi ô 5 dân.

Trường hợp không muốn hoặc không thể tìm kiếm được quan phù hợp thì có thể thay quan bằng cách đặt số lượng dân quy đổi vào ô quan.

2.2. Luật chơi:

Người thắng cuộc trong trò chơi ô ăn quan là người mà khi cuộc chơi kết thúc có tổng số dân quy đổi nhiều hơn.

Di chuyển quân: từng người chơi khi đến lượt của mình sẽ di chuyển dân theo phương án để có thể ăn được càng nhiều dân và quan hơn đối phương càng tốt. Người thực hiện lượt đi đầu tiên thường được xác định bằng cách oẳn tù tì hay thỏa thuận. Khi đến lượt, người chơi sẽ dùng tất cả số quân trong một ô có quân bất kỳ do người đó chọn trong số 5 ô vuông thuộc quyền kiểm soát của mình để lần lượt rải vào các ô, mỗi ô 1 quân, bắt đầu từ ô gần nhất và có thể rải ngược hay xuôi chiều kim đồng hồ tùy ý. Khi rải hết quân cuối cùng, tùy tình huống mà người chơi sẽ phải xử lý tiếp như sau:

  • Nếu liền sau đó là một ô vuông có chứa quân thì tiếp tục dùng tất cả số quân đó để rải tiếp theo chiều đã chọn.
  • Nếu liền sau đó là một ô trống (không phân biệt ô quan hay ô dân) rồi đến một ô có chứa quân thì người chơi sẽ được ăn tất cả số quân trong ô đó. Số quân bị ăn sẽ được loại ra khỏi bàn chơi để người chơi tính điểm khi kết thúc. Nếu liền sau ô có quân đã bị ăn lại là một ô trống rồi đến một ô có quân nữa thì người chơi có quyền ăn tiếp cả quân ở ô này… Do đó trong cuộc chơi có thể có phương án rải quân làm cho người chơi ăn hết toàn bộ số quân trên bàn chơi chỉ trong một lượt đi của mình. Một ô có nhiều dân thường được trẻ em gọi là ô nhà giàu, rất nhiều dân thì gọi là giàu sụ. Người chơi có thể bằng kinh nghiệm hoặc tính toán phương án nhằm nuôi ô nhà giàu rồi mới ăn để được nhiều điểm.
  • Nếu liền sau đó là ô quan có chứa quân hoặc 2 ô trống trở lên hoặc sau khi vừa ăn thì người chơi bị mất lượt và quyền đi tiếp thuộc về đối phương.

Trường hợp đến lượt đi nhưng cả năm ô vuông thuộc quyền kiểm soát của người chơi đều không có dân thì người đó sẽ phải dùng 5 dân đã ăn được của mình để đặt vào mỗi ô 1 dân để có thể thực hiện việc di chuyển quân. Nếu người chơi không đủ 5 dân thì phải vay của đối phương và trả lại khi tính điểm.

Cuộc chơi sẽ kết thúc khi toàn bộ dân và quan ở hai ô quan đã bị ăn hết. Trường hợp hai ô quan đã bị ăn hết nhưng vẫn còn dân thì quân trong những hình vuông phía bên nào coi như thuộc về người chơi bên ấy; tình huống này được gọi là hết quan, tàn dân, thu quân, kéo về hay hết quan, tàn dân, thu quân, bán ruộngÔ quan có ít dân (có số dân nhỏ hơn 5 phổ biến được coi là ít) gọi là quan non và để cuộc chơi không bị kết thúc sớm cho tăng phần thú vị, luật chơi có thể quy định không được ăn quan non, nếu rơi vào tình huống đó sẽ bị mất lượt.

3. Hướng dẫn thiết kế game ô ăn quan bằng Scratch

3.1. Thiết kế sân khấu game ô ăn quan:

Bàn chơi ô ăn quan và quy ước đánh số ô (các số 1, 2, 3, … là số thứ tự của ô và quy ước ngầm, không hiển thị trên bàn chơi)

Lưu tọa độ tâm của các ô vào 2 biến mảng Xpos và Ypos.

Đánh số các ô trong bàn chơi ô ăn quan

Đánh số các ô trong bàn chơi ô ăn quan

3.2. Thiết kế các nhân vật trong game ô ăn quan:

+ Quân chơi: Có các hình dạng với số lượng từ 0 đến 40 với 2 loại quan và dân.

Quân chơi trong game ô ăn quan bằng Scratch

Quân chơi trong game ô ăn quan bằng Scratch

+ Tèo: Hình dạng là các bàn tay

Hình dạng của Tèo

Hình dạng của Tèo

+ Hai nhân vật điều khiển hướng đi: Sang trái và Sang phải

Hướng đi

Hướng đi

3.3. Hướng dẫn thiết kế một số kịch bản trong game ô ăn quan:

– Khi bắt đầu:

Màn hình xuất hiện bàn chơi với 5 dân ở mỗi ô dân và 1 quan ở ở mỗi ô quan.

Lưu giá trị số quân ở mỗi ô vào biến mảng A.

Tèo chỉ di chuyển được trong các ô dân thuộc quyền kiểm soát của người chơi đang được đi.

Khởi tạo giá trị ban đầu cho mảng A

Khởi tạo giá trị ban đầu cho mảng A

In hình dạng các ô trên bàn chơi

In hình dạng các ô trên bàn chơi

– Khi người chơi chọn ô muốn bốc (Khi Tèo được nhấn)

Lấy vị trí của ô được chọn.

Xuất hiện 2 nhân vật: Sang trái và Sang phải ở gần Tèo.

Tèo không di chuyển được nữa.

Lấy vị trí ô được chọn

Lấy vị trí ô được chọn

– Khi người chơi chọn hướng di chuyển (Khi Sang trái hoặc Sang phải được nhấn)

Ẩn hai nhân vật Sang trái và Sang phải.

Bốc, di chuyển và rải theo hướng người chơi chọn. Sau khi rải đến ô cuối cùng thì kiểm tra 2 ô tiếp theo trống hay còn quân để bốc tiếp hoặc ăn hay chững (mất lượt) và chuyển lượt chơi cho người chơi khác.

Các lựa chọn di chuyển trong ô ăn quan

Các lựa chọn di chuyển trong ô ăn quan

+ Các hướng di chuyển trong ô ăn quan:

Có 2 hướng di chuyển trong ô ăn quan là ngược chiều kim đồng hồ và xuôi chiều kim đồng hồ.

Với số thứ tự các ô EM YÊU TIN HỌC đã đánh như ở trên thì khi di chuyển xuôi chiều kim đồng hồ, Tèo di chuyển đến các ô có số thứ tự giảm dần. Và ngược lại, khi di chuyển ngược chiều kim đồng hồ, Tèo di chuyển đến các ô có số thứ tự tăng dần.

Ví dụ 1: Tèo đang ở ô số 8.

Nếu chọn di chuyển sang phải, Tèo sẽ đi xuôi chiều kim đồng hồ sang các ô số lần lượt là: 7, 6, 5, 4, 3, 2, 1, 12, 11, 10, 9, 8, 7…

Nếu chọn di chuyển sang trái, Tèo sẽ đi ngược chiều kim đồng hồ sang các ô số lần lượt là: 9, 10, 11, 12, 1, 2, 3, 4, 5, 6, 7, 8, 9 …

Ví dụ 2: Tèo đang ở ô số 3.

Nếu chọn di chuyển sang phải, Tèo sẽ đi ngược chiều kim đồng hồ sang các ô số lần lượt là: 4, 5, 6, 7, 8, 9, 10, 11, 12, 1, 2, 3, 4 …

Nếu chọn di chuyển sang trái, Tèo sẽ đi xuôi chiều kim đồng hồ sang các ô số lần lượt là: 2, 1, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2 …

+ Thuật toán di chuyển xuôi chiều kim đồng hồ MoveDOWN

Di chuyển xuôi chiều kim đồng hồ

Di chuyển xuôi chiều kim đồng hồ

+ Thuật toán di chuyển ngược chiều kim đồng hồ MoveUP

Di chuyển ngược chiều kim đồng hồ

Di chuyển ngược chiều kim đồng hồ

+ Thuật toán ĂnXUÔI

Ăn xuôi

Ăn xuôi

+ Thuật toán ĂnNGƯỢC

Ăn ngược

Ăn ngược

– Kiểm tra hết quan hay hết quân chưa

Kiểm tra còn quân hay hết quân

Kiểm tra còn quân hay hết quân

– Khi người chơi hết quân

Rải quân khi hết quân

Rải quân khi hết quân

 – Khi hết quan

End game

End game

Xin chân thành cảm ơn thầy Nhớ Để Rồi Quên đã thiết kế các thuật toán giúp bài viết và game được hoàn thiện!

4. Videos

5. Tham khảo code ở đây

6. Tham khảo thêm:

5 1 vote
Article Rating
Share.

About Author

Tuy không rực rỡ và ấm áp như mặt trời nhưng ánh sáng của mặt trăng luôn cho cảm giác yên bình và mát dịu.

Subscribe
Thông báo
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x