2008-11-28 36 views
6

Điều gì sẽ là cách tốt nhất để hiển thị & chương trình bảng trò chơi đơn giản (nói cờ vua, cờ và như vậy) trong C#? Về mặt điều khiển và logic trò chơi cơ bản.Cách tốt nhất để hiển thị và lập bảng trò chơi?

Ý tưởng đến với tâm trí của tôi là sử dụng Hộp ảnh (hoặc lớp kế thừa từ nó) với Board & Các lớp trường.

  • Đó có phải là giải pháp tốt không?
  • Làm cách nào để tách đồ họa khỏi logic trò chơi bằng giải pháp này (Tôi tin rằng Board & Các lớp trường có thể không đủ)?
  • PictureBox có đủ hiệu quả cho mục đích đó không?

Một số Googling cũng đưa tôi đến giải pháp bằng cách sử dụng nút/nhãn cho mỗi trường trò chơi. Nhưng trở lại Hội đồng quản trị, Field và PictureBox.

Khả năng mở rộng - thiết kế nó đúng cách sẽ dễ dàng cho phép thực hiện bất kỳ trò chơi hội đồng nào khác (hoặc thậm chí trò chơi bài) vì tất cả đều có thể thay đổi.

Trả lời

4

Trong phương pháp hướng đối tượng, hãy suy nghĩ về các đối tượng liên quan đến trò chơi của bạn (ví dụ: bảng, các phần) ... cho phép mỗi phương thức vẽ có một đối tượng Graphics và tự vẽ trên đó.

Bản vẽ có thể được thực hiện trên PictureBox - đây là điều khiển lý tưởng cho mục đích đó - nhưng điều này không thực sự quan trọng vì một khi logic vẽ của bạn được đặt đúng chỗ, nó sẽ không phụ thuộc vào loại điều khiển.

Nói chung, không sử dụng giải pháp thay thế với các điều khiển khác nhau. Đây có thể là tốt đẹp cho một giao diện thông thường. Không quá nhiều cho trò chơi (hoặc bất kỳ loại ứng dụng đồ họa nặng).

1

Nếu bạn muốn sáng bóng, bạn có thể thử WPF, sự hoàn hảo. hiện giờ không quá tệ và rất dễ dàng để có được đồ họa có thể tùy chỉnh, tải từ các tệp bên ngoài, v.v.

Về mặt khái quát hành vi, bạn có thể muốn tách riêng mã đồ thị (bố cục, bản vẽ) và sau đó đặt một lớp cho tương tác trò chơi bảng chung: chọn nguồn sau đó đích đến cho di chuyển, lượt, và tương tự, sau đó xếp lớp logic trò chơi của bạn lên trên đó.

Tôi có lẽ sẽ chỉ nhận được Tic-Tac-Toe trước, xem có bất kỳ nơi nào bạn cần để phân tách các lớp của bạn, và sửa chữa sớm, trước khi bị sa lầy trong logic trò chơi.

4

Từ phối cảnh cấu trúc dữ liệu, hãy xem cơ sở dữ liệu bitboard. http://en.wikipedia.org/wiki/Bitboard

+0

Lời khuyên tốt, nhưng rất thấp và cuối cùng không liên quan khi suy nghĩ về khía cạnh mặt trước của trò chơi. –

1

Nếu bạn cảm thấy rất thích mạo hiểm, bạn có thể thử XNA;)

Vâng, nó phức tạp hơn so với các giải pháp khác và có thể là quá mức cần thiết cho một boardgame, nhưng một khi bạn nhận được một hang của nó, bạn có thể tự do tạo ra một số trò chơi tuyệt vời.

0

Nói chung, đầu tiên thiết kế các cấu trúc lôgic cho bảng, phần và như vậy, sau đó thực hiện các thao tác này và cuối cùng chỉ thiết kế giao diện đồ họa, ít nhiều như giao diện người dùng.

Các vấn đề liên quan