Lập trình Game cờ gánh bằng Microsoft visual C#
lượt xem 92
download
- Hiện nay các loại hình giải trí thật sự đa dạng và phong phú, và khi game xuất hiện trên máy tính, thì nó đã thực sự trở thành công cụ giải trí số một trên toàn thế giới. Số lượng người chơi game máy tính lên tới con số hàng tỉ, không phần biệt tuổi tác, giới tính hay màu da. Loại hình giải trí này len lỏi vào khắp ngõ ngách của nền công nghiệp hiện đại, và thế giới văn phòng làm việc cũng không thoát khỏi “tầm với” của nó. - Công việc văn phòng có thể không vất vả...
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Lập trình Game cờ gánh bằng Microsoft visual C#
- ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KHOA TIN HỌC --- ĐỒ ÁN MÔN HỌC ĐỀ TÀI: LẬP TRÌNH GAME CỜ GÁNH BẰNG MICROSOFT VISUAL C# Sinh viên thực hiện: Tưởng Trường Thành Giảng viên hướng dẫn: Nguyễn Thanh Tuấn Đà Nẵng, 20 11
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 2 Mục lục Mở đầu .............................................................................................................. 3 Chương 1. Cơ sở lý thuyết ................................................................................ 4 1. Cơ sở lý luận của vấn đề nghiên cứu ..................................................................... 4 2. Nội dung và phương pháp nghiên cứu ................................................................... 4 3. Kết quả đạt được .................................................................................................... 4 Chương 2. Phát biểu vấn đề ............................................................................. 5 1. Phát biểu bài toán : .......................................................................................... 5 1.1. Nhu cầu thực tế : ................................................................................................................................. 5 1.2. Các chứ c năng của trò chơi: ................................................................................................................ 5 1.3. Hiện trạng và nhược điểm : ................................................................................................................. 5 2. Đặc tả Usecase: ................................................................................................. 6 2.1. Sơ đồ Usecase: ................................................................................................................................... 6 2.2. Danh sách các Actor: ........................................................................................................................ 6 2.3. Danh sách Usecase: ........................................................................................................................... 6 2.4. Đặc tả Usecase: .................................................................................................................................. 7 Điểm mở rộng : ....................................................................................................................................... 9 - Điểm mở rộng : ....................................................................................................................................... 9 - 3. Phân tích ......................................................................................................... 11 3.1 Sơ đồ lớp (mức phân tích) ...................................................................................................................... 11 3.2 Danh sách các lớp đối tượng và quan hệ ................................................................................................ 11 3.3 Mô tả chi tiết từng lớp đối tượng ............................................................................................................ 12 4. Thiết kế kiến trúc ........................................................................................... 15 4.1 Kiến trúc hệ thống ................................................................................................................................... 15 4.2 Mô tả chi tiết từng thành phần trong hệ thống ........................................................................................ 16 XuLyChinh ...................................................................................................... 16 Interface VanCo ............................................................................................... 17 Interface GiaoDien ........................................................................................... 17 Minh họa cho kiến trúc plugin ......................................................................... 17 Chương 3. Kết quả và ứng dụng .................................................................... 18 1. Danh sách các màn hình ...................................................................................... 18 2. Mô tả chi tiết mỗi màn hình ................................................................................. 18 Màn hình Menu ................................................................................................ 18 Màn hình Chọn độ khó .................................................................................... 19 Màn hình Tên người chơi ................................................................................ 19 Màn hình Phòng chờ ........................................................................................ 20 Màn hình Tùy chỉnh ......................................................................................... 21 Màn hình Thi đấu cờ gánh ............................................................................... 21 Kết luận ............................................................................................................ 23 1.Môi trường phát triển và Môi trường triển khai .................................................... 23 2. Kết quả đạt được : ................................................................................................ 23 3. Hướng phát triển .................................................................................................. 23 Tài liệu tham khảo ........................................................................................... 24 Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 3 Mở đầu Hiện nay các loại hình giải trí thật sự đa dạng và phong phú, và khi game xuất hiện trên máy - tính, thì nó đã thực sự trở thành công cụ giải trí số một trên toàn thế giới. Số lượng người chơi game máy tính lên tới con số hàng tỉ, không phần biệt tuổi tác, giới tính hay màu da. Loại hình giải trí này len lỏi vào khắp ngõ ngách của nền công nghiệp hiện đại, và thế giới văn phòng làm việc cũng không thoát khỏi “tầm với” của nó. - Công việc văn phòng có thể không vất vả bằng các công việc lao độ ng chân tay bình thường, nhưng nó lại dễ dàng tạo nên những cơn “stress” cao độ. Nếu không được giải tỏa kịp thời, hiệu quả của công việc sẽ giảm xuống rõ rệt, đôi khi còn gây ra hàng loạt sai lầm nghiêm trọng. Việc chơi games trong những khoảng thời gian nghĩ ngơi giúp giải tỏa được áp lực công việc hơn,có thể nhờ vậy nâng cao hiệu quả công việc. - Vì vậy mục tiêu của đề tài là nghiên cứu, lập trình những game tương thích sử dụng cho giải trí trong công việc văn phòng. Trên đây, tôi xin giới thiệu một game rất thích hợp trong việc giải trí cho công việc văn phòng: - đó là game “cờ gánh”, được lập trình bằng ứng dụng Microsoft visual C#. Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 4 Chương 1. Cơ sở lý thuyết 1. Cơ sở lý luận của vấn đề nghiên cứu - Ngôn ngữ C# khá đơn giản, chỉ khoảng hơn 80 từ khóa và hơn mười mấy kiểu dữ liệu được dựng sẵn. Tuy nhiên, ngôn ngữ C# có ý nghĩa to lớn khi nó thực thi những khái niệm lập trình hiện đại. C# bao gồm tất cả những hỗ trợ cho cấu trúc, thành phần component, lập trình hướng đối tượng. Những tính chất đó hiện diện trong một ngôn ngữ lập trình hiện đại. Hơn nữa ngôn ngữ C# được xây dựng trên nền tảng hai ngôn ngữ mạnh nhất là C++ và Java. - Visual C# là một trong những công cụ trong Microsoft Visual Studio 2008, là một ngôn như lập trình hiện đại được thiết kế để cung cấp một môi trường năng suất để tạo ra các frameworks nghiệp vụ và các thành phần hướng đối tượng sử dụng lại. Vì thế việc ứng dụng Visual C# trong việc sử dụng lập trình game tương đối đơn giản. 2. Nội dung và phương pháp nghiên cứu - Nghiên cứu về ngôn ngữ C#, công cụ lập trình Visual C# ; - Tìm kiếm thông tin, tư liệu từ Internet, sách giáo khoa, thường xuyên tham khảo ý kiến giáo viên hướng dẫn. - Tiến hành phác thảo cấu trúc game: Xây dựng mô hình, giao diện cấu trúc của game. Thiết kế các forms cho các yêu cầu c ủa game. Viết các thuật toán yêu cầu của game. - Lắp ráp các dữ kiện để hoàn tất, tiến hành chạy thử, sửa chữa trước khi đem ra sử dụng. 3. Kết quả đạt được - Game hoàn thành có tên là “cờ gánh”. Trò chơi phát triển dựa trên luật chơi như sau: Bàn cờ hình vuô ng được chia thành mười sáu ô vuông nhỏ. Mỗi bên có tất cả 8 quân cờ được sắp xếp như hình. Các quân cờ đi theo đường của bàn cờ. Cách sắp xếp quân cờ Khi một quân cờ di chuyển vào giữa các cặp quân cờ đối thủ thì sẻ bị gánh các cặp quân cờ đó thành quân cờ của mình. Khi một (hay một nhóm) các quân cờ của người chơi bị ép vào thế không di chuyển được một bước nào nữa thì quân cờ (hay nhóm cờ) đó sẽ bị “bóp chết” và trở thành quân cờ đối thủ. Ván kết thúc khi một trong hai người chơi không còn quân cờ nào của mình trên bàn cờ nữa. Game được chạy trên mọi hệ điều hành khi đã cài Microsoft visual studio(2008). - Có thể chơi trực tiếp với máy hoặc chơi giữa các máy tính với nhau có sử dụng mạng LAN. - Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 5 Chương 2. Phát biểu vấn đề 1. Phát biểu bài toán : 1.1. Nhu cầu thực tế : Trò chơi dân gian Cờ Gánh là một trò chơi tương đối phổ biến ở các vùng nông thôn Việt Nam.Nhưng nó đang ngày càng bị lãng quên do xã hội ngày càng phát triển với những nhu cầu giải trí cao hơn. Vì vậy việc tin học hóa trò chơi dân gian cũng đượ c coi là hoàn toàn hợp lý. Đây là một trò chơi có cấu trúc và cách chơi hoàn toàn giống với trò chơi dân gian Cờ Gánh. Trò chơi giúp cho việc tổ chức chơi một ván cờ gánh trở nên dễ dàng hơn .Với những hình ảnh và các hỗ trợ khác tạo nên một không khí chơ i hấp dẫn và tạo được sự hứng thú. Với luật chơi đơn giản, trò chơi phù hợp với mọi lứa tuổi, hứa hẹn sẽ là một trò chơi phổ biến trên các máy tính hiện nay. 1.2. Các chức năng của trò chơi: Chế độ luyện tập : rèn luyện kỹ thuật chơi cho người chơi qua từng ván đấu (với máy )ở các cấp độ khó khác nhau để nâng cao kỹ năng. Chế độ thi đấu : sau khi kỹ thuật chơi đã được nâng cao, người chơi vào sàn thi đấu thách thức các đối thủ khác (chơi với đối thủ qua mạng LAN ) Tùy chỉnh các thiết lập : có các thiết lập để tăn g hay giảm độ khó trong mỗi ván đấu ( thời gian mỗi lượt chơi , thiết lập luật “mở” - đặc thù của Cờ Gánh…); Thiết lập về kiểu giao diện và tắt mở âm thanh trong trò chơi. Bên cạnh đó, trò chơi sẽ cố gắng phát triển giao diện trực quan, dễ sử dụng và lôi cuốn người chơi.(nằm trong quá trình phát triển trò chơi). 1.3. Hiện trạng và nhược điểm : Trên thị trường hiện nay cũng đã xuất hiện một số trò chơi cờ gánh khác, nhưng hầu hết là chơi offline(chế độ chơi với máy) và về mặt giao diện chưa được đẹp và dễ dàng thao tác. Do vậy, trò chơi này sẽ cố gắng hoàn thiện các nhược điểm đó và phát triển chơi trên mạng LAN một cách hoàn hảo. (Ngoài ra, sẽ nâng cấp chơi trên Internet khi đủ kĩ thuật & thời gian hoàn thiện ^^!) Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 6 2. Đặc tả Usecase: 2.1. Sơ đồ Usecase: Du Quan Co Doi Phuong Vao Bay Bop Chit Quan Co Doi Phuong Tro Chuyen Voi Nguoi Choi Khac Thi Dau Voi Nguoi Choi Khac Di Chuyen Quan Co Xem Danh Sach Nguoi Choi Chon Che Do Choi Qua Mang LAN Ganh Quan Co Doi Phuong Chon Che Do Choi Voi May De Nghi Doi Thu Choi Van Khac Nguoi Choi Chon Do Kho Cua Tro Choi Xin Thua Tuy Chinh Thiet Lap 2.2. Danh sách các Actor: Ý nghĩa/Ghi chú STT Tên Actor ơi ơi trò chơi Cờ Gánh Người Ch Là người ch 1 2.3. Danh sách Usecase: Ý nghĩa/Ghi chú STT Tên Use-case Chọn chế độ chơi với máy độ luyện tập khi muốn thi đấu offline với máy Chọn chế 1 Chọn độ khó của trò chơi Chọn mức độ khó cho các nước đi của máy 2 Chọn chế độ chơi qua mạng Chế độ chơi giữa 2 người online trong mạng nội bộ 3 LAN Tùy chỉnh âm thanh, hình ảnh trong trò chơi Tùy chỉnh thiết lập 4 Xem danh sách người chơi Xem những người đang online trong mạn g LAN 5 Thi đấu với người chơi khác Kết nối tới người chơi trong mạng Lan 6 Di chuyển quân cờ Di chuyển quân cờ được chọn 7 Dụ quân cờ đối phương vào Được dùng cho luật “mở”, dụ đối phương 8 bẫy Bóp Chít quân cờ đối phương Các quân cờ đối phương không còn đường nào di 9 chuyển sẽ bị “bóp chít” thành quân cờ của mình Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 7 Gánh quân cờ đối phương “Gánh” các cặp quân cờ đối phương khi quân cờ của ta 10 đi vào giữa Đề nghị đối thủ chơi ván khác Đề nghị chơi ván khác khi đang chơi 11 12 Xin thua Xin thua ván này trong lúc đang chơi Nói chuyện với người chơi Nói chuyện trong lúc thi đấu hoặc trong phòng chờ đối 13 thủ (ở chế độ LAN) khác 2.4. Đặc tả Usecase: Đặc tả Usecase “Chọn chế độ chơi với máy” Người chơi dùng chức năng này để góp phần nắm rõ luật chơi cũng nh ư luyện tập nâng cao khả năng thi - đấu Cờ Gánh. Bắt đầu khi người chơi chọn menu “luyện tập” ở màn hình menu. - Sau khi chọn vào menu, người chơi sẽ bắt đầu vào thi đấu luyện tập với máy. - Kết thúc usecase khi bước vào thi đấu. - - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Người chơi đứng ở màn hình menu chọn chức năng.” - Trạng thái hệ thống sau khi thực hiện Use -case “Sau khi thực hiện usecase, người chơi bắt đầu vào chọn độ khó cho luyện tập với máy.” Đặc tả Usecase “Chọn độ khó củ a trò chơi” - Người chơi chọn độ khó cho các ván đấu luyện tập với máy. Bắt đầu usecase sau khi usecase Chọn chế độ chơi luyện tập thực hiện xong. - Người chơi chọn mức độ khó của chế độ luyện tập với máy. - Kết thúc usecase khi người chơi bắt đầu vào thi đấu. - - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Người chơi phải chọn chế độ chơi luyện tập thì mới tiến hành chọn độ khó cho trò chơi.” - Trạng thái hệ thống sau khi thực hiện Use -case “Người chơi bắt đầu vào thi đấu luyện tập với máy ở độ khó tương ứng đã chọn trước đó.” Đặt tả Usecase “Chọn chế độ chơi qua mạng LAN” - Người chơi chọn chế độ chơi này để được thi đấu với người chơi khác qua mạng nội bộ của mình. Usecase bắt đầu khi người chơi chọn menu Thi đấu ở màn hình menu của trò chơi. - Thực hiện kết nối vào mạng nội bộ(nếu có) để tìm đối thủ thi đấu. - Kết thúc khi người chơi vào phòng chờ đối thủ(thành công), hoặc ra lại màn hình menu (nếu không kết - nối vào được mạng nội bộ) - Các yêu cầu đặc biệt “Máy tính của ngừoi chơi nên đượ c kiểm tra kết nối mạng nội bộ trước khi thực hiện usecase này.” - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Người chơi đứng ở m àn hình menu chính của trò chơi.” Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 8 - Trạng thái hệ thống sau khi thực hiện Use -case “Vào phòng chờ cùng các đối thủ khác trong mạng Lan (nếu đã kết nối mạng LAN) hoặc ra ngoài menu (nếu chưa kết nối)” - Điểm mở rộng “Nếu máy tính đã kết nôi mạng LAN, usecase Vào phòng chờ sẽ được thực hiện để chờ ối thủ khác.” đ Đặt tả Usecase “Tùy chỉnh thiết lập” Người chơi tùy chỉnh chế độ âm thanh, hình ảnh của trò chơi. - Bắt đầu vào chọn tùy chỉnh phù hợp. - - Kết thúc nếu ngừoi chơi đã đồng ý với tùy chỉnh - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Người chơi có thể tùy chỉnh các thiết lập này ở b ất cứ màn hình nào.” - Trạng thái hệ thống sau khi thực hiện Use -case “Nếu có thay đổi trong tùy chỉnh, hệ thống sẽ thực hiện đáp ứng yêu cầu của người chơi. ” Đặt tả Usecase “Xem danh sách người chơi” - Ngừoi chơi quan sát thông tin những người chơi cũng đang chờ thi đấu để có thể mời thi đấu với mình. Bắt đầu sau khi ngừoi chơi thực hiện chọn chế độ chơi Thi đấu. - Danh sách các người chơi đang online sẽ được cập nhật liên tục - Kết thúc khi ngừoi chơi bắt đầu thi đấu với một đối thủ, hoặc chọn thoát kh ỏi phòng chờ. - - Các yêu cầu đặc biệt “Máy tính của người chơi nên được kết nối với mạng nội bộ. ” - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Mô tả rõ điều kiện trước khi bắt đầu thực hiện Use-case (ví dụ có đòi hỏi người sử dụng phải đăng nhập thành công trước đó hay không…) ” - Trạng thái hệ thống sau khi thực hiện Use -case “Luôn cập nhật danh sách người chơi. ” - Điể m mở rộng “Chỉ sau khi thực hiện usecase chọn chế độ thi đấu qua mạng LAN thì usecase này mới được thực hiện . Tại phòng chờ, người chơi có thể thực hiện usecase Thi đấu với người chơi khác trong mạng LAN.” Đặt tả Usecase “Thi đấu với người chơi khác” - Thi đấu với một người chơi khác qua mạng LAN Người chơi kết nối với một đối thủ sau khi xem danh sách người chơi đang online - Thực hiện kết nối với người chơi đó để thi đấu - Kết thúc khi kết thúc ván đấu, hoặc 1 trong 2 ngừoi chơi bỏ cuộc(Xin thua) - - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Hệ thống thực hiện kết nối với đối thủ để tham g ia ván đấu.” - Trạng thái hệ thống sau khi thực hiện Use -case “Hủy kết nối giữa 2 người chơi.” - Điể m mở rộng “Usecase này được thực hiện sau Xem danh sách người chơi nếu ngừoi chơi muốn kết nối với một đối thủ nào đó để thi đấu. ” Đặt tả Usecase “Di chuyển quân cờ” - Người chơi di chuyển quân cờ của mình được chọn đến một vị trí lân cận. Người chơi thực hiện chọn một quân cờ của mình(ở lượt đi của mình) - Chọn vị trí mới cho quân cờ(thỏa luật chơi). - Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 9 Quân cờ di chuyển đến vị trí mới. - - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Hệ thống ghi nhận quân cờ được chọn và hướng đi để di chuyển quân cờ đến đúng vị trí đó. ” - Trạng thái hệ thống sau khi thực hiện Use -case “Hệ thống di chuyển quân cờ đến vị trí mới và chuyển lượt chơi cho đối phương. ” Điểm mở rộng : - Usecase Dụ quân cờ của đối phương vào bẫy có thể được cho phép thực hiện nếu quân cờ ta vừa di chuyển thỏa nước đi cho luật mở. Usecase Gánh quân cờ đối phương có thể được thực hiện nếu quân cờ của ta di chuyển đến vị trí qui định được ăn quân trong trường hợp đó. Usecase Bóp chít quân cờ đối phương có thể được thực hiện nếu quân cờ của ta có nước di chuyển bao vây nhóm quân cờ đối phương, làm nhóm quân cờ đó không thể di chuyển được dù chỉ 1 nước đi. Đặt tả Usecas e “Dụ quân cờ đối phương vào bẫy” - Người chơi chỉ có thể thực hiện được usecase này nếu ở bước di chuyển quân cờ trước đó người chơi di chuyển sao cho quân cờ đi đúng luật “mở” của trò chơi. Bắt đầu khi người chơi chọn “mở”. - Sau khi quân cờ đối phương di ch uyển vào vị trí ngừơi chơi đặt bẫy thì usecase kết thúc. - - Các yêu cầu đặc biệt “Sau khi quân cờ di chuyển để “mở” - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Cho phép chức năng “mở” để thực hiên dụ đối phương vào bẫy.” - Trạng thái hệ thống sau khi thực hiện Use -case “Chuyển lượt chơi lại cho người chơi. ” - Điể m mở rộng “người chơi thực hiện Usecase Di chuyển quân cờ để thực hiện mở thì usecase này mới xuất hiện. ” Đặt tả Usecase “Bóp Chít quân cờ đối phương” - Nhóm quân cờ đối phương bị bóp chít khi nhóm quân cờ đó không còn di chuyển được một nước đi nào nữa sau nước đi trước của người chơi. Sau khi quân cờ của ngừoi chơi di chuyển có thể sẽ bóp chít được quân cờ đối phương nếu bịt kín hết - các lối đi. Kết thúc sa u khi những quân cờ đó của đối phương bị bóp chít thành quân cờ của người chơi. - - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Thực hiện chuyển các quân cờ bị bóp chít thành các quân cờ của người chơi. ” - Trạng thái hệ thống sau khi thực hiện Use -case “Trả lượt chơi cho đối phương ” Điểm mở rộng : - Sau Usecase Di chuyển quân cờ thì usecase này có thể được thực hiện. Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 10 Sau khi Gánh quân cờ đối phương thì usecase này cũng có thể được thực hiện. Đặt tả Usecase “Gánh quân cờ đối phương” - “Gánh” các cặp quân cờ đối phương nếu quân cờ của người chơi di chuyển vào vị trí chính giữa các cặp quân cờ đó. Người chơi di chuyển quân cờ của mình đi vào vị trí “gánh” - Các quân cờ đối phương bị gánh sẽ chuyển thành quân cờ của ngừoi chơi. - Sau khi “gánh” xong thì usecase kết thúc. - - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Giữ lượt chơ i cho người chơi đến khi “gánh” xong.” - Trạng thái hệ thống sau khi thực hiện Use -case “Chuyển lượt chơi qua cho đối phương. ” Điểm mở rộng “Sau khi Usecase Di chuyển thực hiện thì usecase này mới được xét có được thực hiện hay không” Đặt tả Usecase “Đề nghị đối thủ chơi ván khác” - Đề nghị đối thủ được chơi lại ván khác theo yêu cầu của người chơi khi cảm thấy không muốn chơi ván đang chơi nữa. Người chơi đề nghị đối thủ chơi ván khác thực hiện usecase này - Kết thúc khi có trả lời từ đối phương. - - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Dừng tạm thời ván đang chơi để hởi ý kiến đối phương” - Trạng thái hệ thống sau khi thực hiện Use -case “Nếu đối phương đồng ý, ván khác sẽ được thiết lập. Nếu không, chơi tiếp ván đang chơi. ” Đặt tả Usecase “Xin thua” - Cảm thấy không muốn chơi nữa thì nhấn Xin thua để thoát khỏi trò chơi. Xin thua khi đang thi đấu, usecase được thực hiện. - Kết thúc sau khi người chơi thoát. - - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Ngắt tất cả kết nối giữa 2 người chơi. ” - Trạng thái hệ thống sau khi thực hiện Use -case “Ngắt tất cả kết nối giữa 2 người chơi. ” Đặt tả Usecase “Nói chuyện với người chơi khác” - Nói chuyện với đối thủ khi đang thi đấu hoặc ở phòng chờ (ở chế độ thi đấu trong mạng LAN) để tạo sự thích thú. Người chơi nhập vào lời mún nói với đối phương rồi nhấn gửi. - Đối phương sẽ nhận được thông điệp từ cửa sổ bên tương ứng. - Kết thúc sau khi thông điệp đến bên nhận. - - Trạng thái hệ thống khi bắt đầu thực hiện Use -case “Hệ thống nhận thông điệp và gửi cho đối phương. ” - Trạng thái hệ thống sau khi thực hiện Use -case “Kết thúc gửi thông điệp ” Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 11 - Điểm mở rộng “Chỉ được phép thực hiện khi đã thực hiện use -case xem danh sách người chơi trong mạng LAN hoặc use -case thi đấu với người chơi khác. ” 3. Phân tích 3.1 Sơ đồ lớp (mức phân tích) Giao dien Quan ly giao dien Quan ly xu ly Ten dsgd : Danh sach giao dien ... vc : Van co hien tai Duong dan gd : Giao dien hien tai dsvc : Danh sach van co * 1 Khoi tao() Lay danh sach giao dien() Lay danh sach cac xu ly van co() ... 1 * Binh thuong Nam moi Van co LAN ID bc : Ban co ganh Ket noi Quan co OFFLINE Khoi tao van co() d : Vi tri hien tai Cap do Gui du lieu() dsd : Danh sach vi tri co the di den ... Ket thuc() La quan co cua nguoi choi 1 Di chuyen() 1..* Den mot diem duoc hay khong() 1 1 Ban co Danh sach quan co 1 1 Ma tran ban co Diem Quan co duoc chon Ket thuc X 1 * Den luot nguoi choi Y dsd : Danh sach nhung diem di den duoc tu diem nay Kiem tra bop chit() So luong quan co cua nguoi choi() ... Kiem tra co the den duoc mot diem tu diem nay hay khong() ... Kiem tra an quan() Kiem tra trung lap voi mot diem khac() Kiem tra mo() Xu ly mo() Di chuyen quan co() 3.2 Danh sách các lớp đối tượng và quan hệ Tên lớp/quan hệ Loại Ý nghĩa/Ghi chú STT Lớp định nghĩa vị trí 1 Diem 2 QuanCo Lớp định nghĩa một quân cờ trên bàn cờ Lớp mô tả bàn cờ 3 BanCo 4 VanCo Lớp tổng quát cho xử lý ván cờ trong trò chơi 5 LAN Lớp xử lý cho ván cờ ở chế độ thi đấu mạng LAN(kế thừa từ VanCo) Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 12 Lớp xử lý cho ván cờ ở chế 6 OFFLINE độ thi đấu với máy(kế thừa từ VanCo) 7 QuanLyXuLy Lớp quản lý chính cho tất cả các xử lý ván cờ trong trò chơi Lớp tổng quát cho việc quản 8 GiaoDien lý một giao diện trò chơi Lớp quản lý chính cho tất cả 9 QuanLyGiaoDien các giao diện có trong kho giao diện Ghi chú : 2 lớp BinhThuong và NamMoi là 2 lớp đại diện cho các giao diện (có sử dụng plugin, thay đổi giao diện,ké thừa từ GiaoDien) 3.3 Mô tả chi tiết từng lớp đối tượng Lớp Diem: o Kế thừa : Không o Danh sách thuộc tính Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú STT 1 X Private Tọa độ x của vị trí Tọa độ y của vị trí 2 Y Private Danh sách những điểm có đường 3 Danh sach nhung Private nối với điểm này trên bàn cờ diem di den duoc o Danh sách các trách nhiệm (các phương thức) chính Kiem tra co the den mot diem tu diem nay hay khong ? :Kiểm tra giữa 2 điểm có đường nối với nhau trên bàn cờ hay không? Kiem tra trung lap voi mot diem khac? : Kiểm tra 2 điểm có trùng với nhau trên bàn cờ không? Lớp QuanCo: o Kế thừa : Không o Danh sách thuộc tính Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú STT Vị trí hiện tại của quân cờ trên bàn 1 Vi tri hien tai Private cờ Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 13 Xác định là quân cờ của bên nào 2 La quan co cua ta Private Danh sách những điểm có đường 3 Danh sach nhung Private nối với điểm này trên bàn cờ & diem di den duoc không có quân quân cờ nào đang đứng ở đó o Danh sách các trách nhiệm (các phương thức) chính Di chuyen : di chuyển quân cờ đến một điểm trong bàn cờ Den mot diem duoc hay khong? : kiểm tra đến một điểm trong bàn cờ được hay không?(có đường nối và không có quân cờ nào tại đó) Lớp BanCo: o Kế thừa : Không o Danh sách thuộc tính : Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú STT Danh sách những quân cờ trong 1 Danh sach quan Private bàn cờ co Ma trận điểm biểu diễn bàn cờ 2 Ma tran ban co Private Quân cờ đang được chọn trong bàn 3 Quan co duoc Private cờ chon o Danh sách các trách nhiệm (các phương thức) chính Di chuyen quan co : Xử lý di chuyển quân cờ trong bàn cờ Xu ly mo: xử lý “mở” theo đúng luật mở trong cờ gánh. Kiem tra an quan : xét luật ăn quân và áp dụng Kiem tra bop chit : xét luật bóp chít và áp dụng Kiem tra mo : kiểm tra luật mở So luong quan co cua nguoi choi : số quân cờ của người chơi trong bàn cờ Lớp VanCo : o Kế thừa : Không o Danh sách thuộc tính Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú STT Tên loại xử lý ván cờ 1 ID Protected Bàn cờ của xử lý này 2 Ban co ganh Protected Tình trạng kết nối của xử lý ván cờ 3 Ket noi Protected o Danh sách các trách nhiệm (các phương t hức) chính Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 14 Khoi tao van co : lớp kế thừa override Gui du lieu : lớp kế thừa override Ket thuc : lớp kế thừa override Lớp LAN: o Kế thừa : Kế thừa từ lớp VanCo o Danh sách các thuộc tính : kế thừa từ lớp VanCo Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú STT o Danh sách các trách nhiệm (các phương thức) chính Khoi tao van co : ( override) khởi tạo kết nối để chơi mạng LAN Gui du lieu : ( override) gửi dữ liệu qua mạng LAN Ket thuc : ( override) Xử lý ngắt kết nối và kết thúc chơi Lớp OFFLINE: o Kế thừa : Kế thừa từ lớp VanCo o Danh sách các thuộc tính : kế thừa từ lớp VanCo và thêm các thuộc tính sau Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú STT Chỉ độ khó của xử lý ván cờ 1 Do kho Private này(máy) o Danh sách các trách nhiệm (các phương thức) chính Khoi tao van co : ( override) khởi tạo ván cờ với máy Gui du lieu : ( override) xử lý chuyển lượt người chơi Ket thuc : ( override) xử lý kết thúc ván cờ Lớp QuanLyXuLy: o Kế thừa : Không o Danh sách các thuộc tính : Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú STT Xử lý ván cờ đang sử dụng 1 Van co hien tai Private Tất cả các xử lý ván cờ có tồn tại 2 Danh sach van co Private o Danh sách các trách nhiệm (các phương thức) chính Lay danh sach cac xu ly van co : đọc tất cả các xử lý ván cờ có tồn tại trong kho dữ liệu Lớp GiaoDien: o Kế thừa : Không o Danh sách các thuộc tính : Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú STT Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 15 Tên loại giao diện 1 Ten Protected ĐƯờng dẫn đến thư mục chứa 2 Duong dan Protected resources o Danh sách các trách nhiệm (các phương thức) chính Khoi tao : khởi tạo các bitmap sử dụng trong giao diện trò chơi Lớp QuanLyGiaoDien: o Kế thừa : Không o Danh sách các thuộc tính : Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú STT Giao diện đang sử dụng 1 Giao dien hien tai Private Danh sách tất cả giao diện đang có 2 Danh sach giao Private dien o Danh sách các trách nhiệm (các phương thức) chính Lay danh sach giao dien : đọc tất cả các giao diện có tồn tại 4. Thiết kế kiến trúc 4.1 Kiến trúc hệ thống Thành phần Diễn giải Xử lý chính cho m ỗi Client (xử lý ván cờ & xử lý giao diện) XuLyChinh Lớp interface cho cấu trúc plugin xử lý ván cờ InterfaceVanCo Lớp interface cho cấu trúc plugin giao diện trò chơi InterfaceGiaoDien Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 16 4.2 Mô tả chi tiết từng thành phần trong hệ thống XuLyChinh Lớp đối tượng Diễn giải Lớp quản lý âm thanh, tiếng động trong trò chơi AmThanh Quản lý xử lý về hình ảnh trong winform BitmapRegion Form chọn độ khó frmChonDoKho frmManHinhCHinh Form màn hình chính frmMenu Form menu Form phòng chờ frmPhongCho Form tên người chơi frmTenNguoiChoi FrmThanhTich Form thành tích Form tùy chọn frmTuyChon Xử lý lưu trữ thông tin thi đấu với máy LuyenTap Lớp quản lý nhạc nền cho trò chơi NhacNen Lớp chính của ứng dụng Program Lớp quản lý tất cả các xử lý ván cờ QuanLy Quản lý tất cả các giao diện QuanLySkin Quản lý hình ảnh nguồn Resources Setttings Sealed Class Lớp giao diện Skin Quản lý thông tin lưu trữ chế độ thi đấu mạng cục bộ ThiDau Lớp xử lý ván cờ VanCoGanh Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 17 Interface VanCo Lớp đối tượng Diễn giải Lớp điểm CToaDo Lớp quân cờ CQuanCo Lớp bàn cờ CBanCo Quản lý các xử lý thêm cho ván cờ CXuLy Interface cho xử lý một ván cờ IVanCo Interface GiaoDien Lớp đối tượng Diễn giải ản lý giao diện cho trò chơi IGiaoDien Interface qu Minh họa cho kiến trúc plugin Kế thừa từ interface IVanCo cho xử lý Kế thừa từ interface IGiaoDien cho các giao diện khác nhau (trò chơi có thể cập một ván cờ (áp dụng cho xử lý LAN và OFFLINE với các xử lý có độ khó khác nhật, bổ sung nhiều Skin khác nhau)s nhau Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 18 Chương 3. Kết quả và ứng dụng 1. Danh sách các màn hình Liệt kê danh sách các màn hình trong đồ án Ý nghĩa/Ghi chú STT Tên màn hình Màn hình với các menu lựa chọn chức năng 1 Màn hình Menu trong trò chơi . Màn hình Chọn độ Màn hình chọn mức độ khó cho chế độ chơi 2 luyện tập (chơi với máy) khó Màn hình Tên người Màn hình cho người chơi ghi danh tính mình 3 trước khi vào chế độ thi đấu mạng LAN chơi Màn hình Phòng chờ Màn hình thể hiện phòng chờ với các thông 4 tin : danh sách người chơi đan g online, chatbox … Màn hình Tùy chỉnh Màn hình thể hiện các thiết lập và các chế độ 5 chọn cho người chơi. Màn hình Thi đấu Màn hình chính của trò chơi. Màn hình thi 6 Cờ Gánh đấu Cờ Gánh Thể hiện lịch sử thi đấu của người chơi ở chế 7 Màn hình Thành tích độ LAN Màn hình Trợ giúp Các thông tin hướng dẫn chơi, tác giả. 8 2. Mô tả chi tiết mỗi màn hình Màn hình Menu Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 19 Mô tả cách sử dụng và xử lý trên màn hình : Người chơi chọn các chức năng menu bằng cách click chuột trái vào các icon tương ứng trên màn - hình. Màn hình Chọn độ khó Đã click vào tên độ khó Chưa chọn Mô tả cách sử dụng và xử lý trên màn hình: - Có 2 cách chọn : + Double click vào tên độ khó. + Click chuột trái vào tên độ khó, sau đó chọn button play. Màn hình Tên người chơi Mô tả cách sử dụng và xử lý trên màn hình: Nhập tên người chơi ở textbox . Sau đó hoàn tất bằng cách : nhấn ENTER, hoặc click chuột trái lên - biểu tượng bảng chỉ dẫn mũi tên. Đồ án môn học 09CNTT2 Tưởng Trường Thành
- Lập trình game cờ gánh bằng Microsoft visual C# 2008 20 Màn hình Phòng chờ Button cập nhật danh sách người chơi Chọn người bạn Danh sách muốn nói những chuyện người riêng chơi đang (hoặc với ở trong tất cả) phòng chờ Buton mời thi đấu (có thể mời bằng cách Ghi nội click chuột dung nói phải vào tên chuyện người chơi) vào đây Button thoát khỏi phòng chờ Button gửi nội dung trò chuyện Mô tả cách sử dụng và xử lý trên màn hình: Trò chuyện : - Nói chuyện riêng với người nào đó : chọn tên người đó trên combobox danh sách người chơi, hoặc click chuột phải vào tên người đó trong danh sách người chơi rồi chọn Nói chuyện riêng - Nói chuyện với tất cả mọi người (mặc định) Đồ án môn học 09CNTT2 Tưởng Trường Thành
CÓ THỂ BẠN MUỐN DOWNLOAD
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn