16130638- ĐỖ VĂN TƯỜNG TỨ- Player, TimeComparator, HighScoreManager Code

1.Player
*Thuộc phần Model
-Player là lớp người chơi có các thông tin ; Tên và thời gian hoàn thành trò chơi (Giờ, phút, giây).


2.TimeComparator (So sánh thời gian)
* Thuộc phần View
- TimeComparator là lớp dùng để so sánh thời gian của những người chơi
- TimeComparator lấy thông tin từ lớp Player và so sánh lần lượt theo giờ, phút, giây.


3. HighScoreManager ( Quản lí điểm của người chơi)
* Thuộc phần View
- HighScoreManager là lớp hiển thị giao diện thời gian và quản lí kết quả của người chơi

      +Giao diện thời gian: 3 label :  Giờ, phút, giây
                                         3 button: Start, Stop, Reset.

       Button Start : có chức năng cho thời gian bắt đầu chạy, tương tự như việc nhấn nút Start Game
                            ở ngoài giao diện Menu chính.


       Button Stop:  có chức năng cho thời gian dừng lại, tương tự như việc Gấu đi đến Hũ Mật và                                  Chiến thằng.
                           Ngoài ra còn xuât hiên Cửa sổ để Người chơi nhập tên và khi bấm vào nút OK sẽ                              hiện lên bảng xếp điểm hoặc nhấn vào nút Cancel để hủy việc nhập điểm,
                       




 Khi nhấn nút Stop

Khí nhấn nút Ok


      Button Reset: có chức năng cho thời gian chạy lại. Tương tự như nút Chơi lại trong game


16130674 - Võ Văn Vũ - Thư viện câu hỏi

1. Question
- Question sẽ thuộc phần model của game.
- Một Question sẽ gồm nội dung câu hỏi, bốn đáp án, và đáp án đúng của câu hỏi đó.
- Ngoài ra nó còn chứa phương thức để xác định đáp án đúng. Bằng cách nhận vào ID của button (là một chuỗi) và so sánh với đáp án đúng của câu hỏi , nếu trùng sẽ trả về true.

2. QuestionLibrary
- Thuộc phần model.
- Là nơi chứa danh sách các câu hỏi.
- Chịu trách nhiệm khởi tạo danh sách câu hỏi.
- Cho biết vị trí index của câu hỏi hiện tại trong danh sách câu hỏi.
- Phương thức tăng index câu hỏi để chuyển qua câu hỏi tiếp theo trong danh sách.  Nếu sau câu hỏi cuối cùng thì sẽ lặp lại câu hỏi đầu tiên.


Nhật kí tuần 5 - Coding

1. Phân công công việc
Tên
Công việc
Tiến độ
Nguyễn Minh Tuyễn
Thiết kế giao diện menu chính và menu trong game
Hoàn thành 
Đỗ Văn Tường Tứ
Thực hiện tính năng đếm thời gian, bảng điểm
Hoàn thành
Đỗ Quang Thịnh
Vẽ bản đồ lên màn hình chơi
Hoàn thành
Nguyễn Hà Kiên
Thực hiện tính năng di chuyển của gấu
Chưa hoàn thành
Võ Văn Vũ
Thực hiện thư viện câu hỏi
Hoàn thành

2. Hình ảnh nhóm

3. Cập nhật danh sách nhóm
- Nguyễn Hà Kiên rời nhóm.

Nhật ký tuần 4 - CRC Card

1. Phân công công việc

Tên
Công việc
Tiến độ
Nguyễn Minh Tuyễn
ExtensionPanel, MainMenuFrame (trừ HighScore)
100%
Đỗ Văn Tường Tứ
Player, HighScoreFrame
100%
Đỗ Quang Thịnh
BoadPanel, Map
100%
Nguyễn Hà Kiên
Bear, GameImage
100%
Võ Văn Vũ
QuestionLibrary, Question
100%
2. Hình ảnh nhóm

Class Diagram Tổng hợp


Nhật kí tuần 3 - Class Diagram

1. Phân công công việc

Tên
Công việc
Tiến độ
Nguyễn Minh Tuyễn
ExtensionPanel, MainMenuFrame (trừ HighScore)
100%
Đỗ Văn Tường Tứ
Player, HighScoreFrame
100%
Đỗ Quang Thịnh
BoadPanel, Map
100%
Nguyễn Hà Kiên
Bear, GameImage
100%
Võ Văn Vũ
QuestionLibrary, Question
100%

2. Hình ảnh nhóm

Use Case tổng hợp


USE CASE TRONG GAME
1.       Use case giao diện chính
-          Khi khởi động hệ thống sẽ hiển thị lên một JFrame có tiêu đề game và hình nền game, bên trong có chứa menu như đã nêu ở use case trên, ngoải ra còn chứa các button điều khiển như sau:
-          Start: Khi click nút vào thì hệ thống sẽ đưa người chơi vào màn hình chơi game;
-          HighScore: Khi click vào đây, hệ thống sẽ hiện lên một JFrame, trong đó sẽ hiện thị một bảng điểm jtable gồm có tên người dùng,thời gian qua màn.
-          Help: Khi click vào đây, hệ thống sẽ hiện lên một JFrame hướng dẫn người chơi cách chơi game, cách tính điểm.
-          About: Khi click vào đây, hệ thống sẽ hiện lên một JFrame thể hiện thông tin chi tiết các thành viên của nhóm (bao gồm họ tên, mã số sinh viên, điện thoại..)
-          Exit: Khi người click vào đây, hệ thống sẽ xuất hiện thông báo xác nhận là người dùng có muốn thoát hệ thống hay không,nếu có thì hệ thống out và không lưu chi tiết nào của người chơi, ngược lại thì không làm gì cả.
2.       Usecase Menu Ingame:
-          New game: Khi click vào đây, hệ thống sẽ hiện lên một bảng thông báo nhận bạn có muốn chơi lại từ đầu hay không, nếu có sẽ reset màn chơi, ngược lại không làm gì cả.
-          Tạm dừng: Khi click vào đây, hệ thống sẽ thực hiện usecase “ Tạm dừng”.
-          Âm thanh: Khi click vào đây, hệ thống sẽ tắt hoặc bật âm thanh.
-          Menu chính: Khi click vào đây, hệ thống sẽ hiện thông báo xác nhận bạn có muốn trở về Menu chính, nếu có thì hệ thống sẽ đưa người chơi về Menu chính, nếu không tiếp tục chơi.
3.       Usecase câu hỏi:
-          Câu hỏi xuất hiện khi gấu gặp ô “Câu hỏi”.
o   Câu hỏi là ngẫu nhiên, trắc nghiệm gồm 4 đáp án, chỉ được chọn 1 đáp án.
o   Trả lời đúng thì ô “Câu hỏi” trở thành 1 ô đi qua được, gấu tiếp tục di chuyển về đích.
o   Trả lời sai thì ô “Câu hỏi” trở thành ô “Đá” không đi qua được, gấu phải tìm đường khác để di chuyển về đích.
4.       Use case Di chuyển
-          Người chơi sử dụng các phím A, S, D, W điều khiển gấu di chuyển trong map, cỏ là đối tượng
duy nhất gấu có thể đi qua không gặp trở ngại nào, vượt qua các câu hỏi để chiến thắng khi
tới được đích là hủ mật.
o   Map là tập hợp các ô cỏ, đá và câu hỏi, độ lớn 8x8, mỗi bước di chuyển là 1 ô.
o   Gấu có thể đi qua cỏ, câu hỏi (sau khi trả lời đúng), không thể đi qua đá và câu hỏi trả lời
sai.
o   Gấu không thể di chuyển khi game đang tạm dừng.
-          Khi di chuyển, nếu đi lên câu hỏi, người chơi phải trả lời câu hỏi để qua được ô đó.
o   Trả lời đúng ô câu hỏi trở thành ô câu hỏi trả lời đúng và đi qua được (tương tự như cỏ).
o   Trả lời sai ô câu hỏi sẽ trở thành đá và không đi qua được.
5.       Use Case Tạm dừng:
-          Khi nhấn vào button “tạm dừng” trên giao diện trò chơi hoặc nhấn phím “Space” trên bàn phím thì:
o   Đồng hồ ngưng đếm thời gian.
o   Người chơi không thể di chuyển cho đến khi bấm vào nút tiếp tục.
o Khi đang trên ô câu hỏi thì không thể tạm dừng.
6.       Use Case Tiếp tục
-          Khi người chơi chọn vào “tiếp tục” thì:
o   Đồng hồ tiếp tục đếm thời gian.
o   Trả về game như hiện trạng trước đó.
o   Người chơi có thể di chuyển bình thường.
7.       Use Case Chiến thắng
-          Người chơi di chuyển gấu đi qua cỏ, vượt các chướng ngại vật.
-          Khi vượt qua các chướng ngại vật và di chuyển được lên hủ mật người chơi sẽ chiến thắng.

Nhật kí tuần 2 - Use Case

1. Phân công công việc


Nguyễn Minh Tuyễn
Use case Tạm dừng – Tiếp tục
Hoàn thành
Đỗ Văn Tường Tứ
Use case Giao diện (Main menu)
Hoàn thành
Đỗ Quang Thịnh
Use case Menu (Ingame menu)
Hoàn thành
Nguyễn Hà Kiên
Use case Câu hỏi (Collision)
Hoàn thành
Võ Văn Vũ
Use case Di chuyển, Chiến thắng
Hoàn thành

2. Hình ảnh nhóm