Lập trình Game Brick Breaker được viết bằng ngôn ngữ java Tựa game phá gạch đã có từ rất lâu, nhưng cho đến nay nó vẫn thu hút được đông đảo người chơi. Bạn sẽ dùng quả bóng sắt của mình để phá vỡ các khối gạch bên trên, Sẽ có những khối gạch đặc biệt chứa những vật phẩm hỗ trợ cho bạn, bạn phải nỗ lực ăn được hết các vật phẩm đó nhé.
Trang 1BÁO CÁO ĐỒ ÁN LẬP TRÌNH JAVA NÂNG CAO
Version <3.0>
Trang 2Lịch sử phiên bản
bản
Thanh Hòa
sung chương 1
Lê Kim Tuấn
Lương Viết Dung
sung chương 3
Lương Viết Dung
Thanh Hòa
thiện Lê Kim Tuấn, Lê Việt Tùng
Trang 3NHÓM 07 LỚP A
ST
Mức độ hoàn thành (Thang điểm 10)
1 Phan Ngọc
Thảo
Code lớp Board, Play, báo cáo 10
2 Nguyễn Thị
Thanh Hòa
Code lớp Ball, Score, LevelUp, tổng hợp làm báo cáo.
10
3 Lê Kim Tuấn Code lớp Paddle, Const, Gifts,
LevelUp ,tìm kiếm thông tin.
10
4 Lê Viết Dung Code lớp BrickBreaker, Info, đồ
họa game, báo cáo
10
5 Lê Việt Tùng Code lớp HighScore, sound, Bricks,
làm word báo cáo và tìm hiểu thêm 10
Trang 4Mục lục
4 Kết luận & hướng phát triển 16
Trang 51. 1 Giới thiệu về game
1.1 Lịch sử
Game Brick Breaker có tên ban đầu là Breakout, được phát triển bởi
Atari Inc và giới thiệu từ năm 1976 Nó được chế ra bởi Nolan Bushnell
và Steve Bristow, Breakout chịu ảnh hưởng lớn bởi game Pong phổ biến được phát hành năm 1972 Trong cuối những năm 70, máy tính cá nhân chỉ có thể truy cập cho các viện nghiên cứu và chỉ dành cho các thí
nghiệm do đó các trò chơi Brick Breaker đầu tiên chỉ phát triển như một trò chơi điện tử
Như sự bùng nổ xuất hiện, ngay lập tức Breakout đã trở nên nổi tiếng
phát hành hơn 20 trò chơi Breakout Bản sao của Breakout thực sự đã
được phát hành cho mỗi nền tảng, có thể từ trò giao diện điều khiển máy vào năm 1976 đến PS3 trong năm 2009
Năm 2007 đã có một sự thay đổi lớn khi Brick Breaker được phát hành Brick Breaker là trò chơi đầu tiên được tạo ra cho các điện thoại di động nền tảng BlackBerry Brick Breaker đã phá kỷ lục về doanh số và tái
thành lập các thể loại phong cách Breakout.Ngày nay Internet phát triển, nhiều trò chơi phong cách Breakout được tải lên mạng và thành công
nhanh chóng của Brick Breaker thúc đẩy sự phát triển tốt của game này
1.2 Cách chơi
Người chơi di chuyển thanh trượt ở phía dưới cửa sổ sang trái hoặc sang phải bằng các phím mũi tên trái và phải đánh trả lại một quả bóng để phá
vỡ những viên gạch trên cùng cửa sổ và loại bỏ chúng
Nhiệm vụ của người chơi là phải phá vỡ được hết những viên gạch để
chiến thắng
Người chơi có 3 lượt cố gắng Mỗi lần để bóng qua khỏi thanh trượt một lượt chơi sẽ bị mất Nếu chưa phá vỡ hết gạch mà 3 lượt cố gắng đã mất thì thua cuộc
Trang 61.3 Các chiến thuật
Xác định những viên gạch cần phá hủy trước để tạo chỗ trống cho lượt
bóng sau phá hủy được nhiều gạch hơn
Chú ý hướng đi và tốc độ của bóng để di chuyển thanh trượt đỡ bóng
chính xác
Tưởng tượng hướng đi của bóng sau khi bắn ra lại từ thanh trượt mà di
chuyển thanh trượt sao cho bóng va vào gạch mình muốn phá hủy
Tránh cho bóng tiếp xúc với những chướng ngại vật hoặc các gạch gây
hại để không kéo dài thời gian chơi, mất điểm và rút ngắn thanh trượt
2 Thiết kế
2.1 Các chức năng của game
Bố cục menu của game:
o Chơi: bắt đầu lược chơi mới
o Điểm cao nhất: top mười điểm cao nhất của người chơi
o Thông tin: các thông tin về game và cách chơi
Nội dung của trò chơi
o Người chơi di chuyển thanh ngang theo hướng phím chỉ hướng để quả bóng không rơi xuống đất
o Màn chơi kết thúc khi gạch được phá hết Màn chơi mới (cấp mới)
sẽ có mức độ khó hơn (tốc độ di chuyển của quả bóng sẽ tăng lên,
số lượng gạch cũng tăng dần)
Trang 72.2 Giao diện
Hình 2.2.1: Form chính của game
Hình 2.2.2: Paddle
Trang 8Hình 2.2.3: Ball
Hình 2.2.4: Brick
2.3 Mô tả các class
Game gồm các lớp:
Lớp Const: Bao gồm các hằng số chung trong game
Lớp Ball: Thiết kế ball và các hàm getters, setters và sự tương tác giữa ball với paddle và brick trong game
Lớp Paddle: Thiết kế paddle và các hàm getters, setters và các hàm
bắt sự kiện khi nhấn nút trái và phải
Lớp Bricks: Thiết kê brick và các hàm getters, setters
Lớp Board: Bao gồm các hàm paint để vẽ bricks, ball và paddle lên
panel, các hàm chưa điều kiện kết thúc game và chiến thắng
Lớp BrickBreaker: Thiết kế giao diện form chính của game
Lớp Score: Tính điểm và lưu vào danh sách 10 điểm số cao nhất
Lớp levelUp: Tạo ra màng chơi sau mỗi lần người chơi lên cấp
Lớp Info: Hiển thị thông tin về game và cách chơi
Lớp Gifts: Tạo ra những phần thưởng khi chơi, có thể tốt hoặc xấu
Lớp Sound: Âm thanh trong game
Lớp Play: Chạy game fullscreen
Lớp HighScore: Đưa ra danh sách 10 điểm số cao nhất
Trang 93 Kết quả - Demo
3.1 Giới thiệu
Game có giao diện chính gồm 3 nút chọn:
”CHƠI” : Click vào nút này sẽ hiện một giao diện mới, người chơi bắt đầu trò chơi với cấp độ 1 Trò chơi có 9 cấp,chiến thắng mỗi cấp game sẽ
tự động chuyển sang cấp độ tiếp theo Ở mỗi cấp bạn sẽ có 20 gói quà với 8 loại quà khác nhau
o Quà loại 1: Cộng 20 điểm
o Quà loại 2: Trừ 10 điểm
o Quà loại 3: Tăng 2 bóng
o Quà loại 4: Giảm chiều dài thanh trược
o Quà loại 5: Tăng tốc độ bóng
o Quà loại 6: Thêm một mạng
o Quà loại 7: Đưa chiều dài thanh đỡ về kích thước ban đầu
o Quà loại 8: Đưa tốc độ bóng về ban đầu
Sau 20 giây quà sẽ xuất hiện một lần bạn có thể nhận hoặc bỏ qua
Trong quá trình chơi bạn cũng có thể điều chỉnh bật, tắt âm thanh, dừng hoặc tiếp tục trò chơi, thoát khỏi trò chơi bằng các nút chức năng ở góc trái dưới màn hình
”ĐIỂM CAO NHẤT” : Hiện danh sách 10 người chơi có số điểm cao nhất
” TRỢ GIÚP”: Form chỉ dẫn về các phím tắt khi chơi
+ : Di chuyển
Trang 10
+ : Bật/Tắt âm thanh
+ : Tạm dừng/Tiếp tục trò chơi
3.2 Hình ảnh demo
m p
Trang 11Hình 3.2.1.Form chính.
Trang 12Hình 3.2.2 Điểm cao nhất.
Trang 13Hình 3.2.3.Hướng dẫn.
Trang 14Hình 3.2.4 Cấp 1.
Trang 15Hình 3.2.6 Giảm chiều dài thanh Paddle.
Hình 3.2.7 Tăng tốc độ của Ball
Trang 16Hình 3.2.8 Thua cuộc.
Trang 174 Kết luận & hướng phát triển
- Sau quá trình tìm hiểu, nghiên cứu và được sự quan tâm hướng dẫn của thầy, nhóm chúng em đã hoàn thành đề tài của mình Với những cố gắng, nỗ lực chúng
em đã đáp ứng được yêu cầu thầy đề ra, song bên cạnh đó thì đề tài vẫn còn những hạn chế về tính chính xác của các thông số,thiết kế đồ họa và game còn khá đơn giản
- Hy vọng trong tương lai đề tài sẽ được nâng cấp, phát triển cao hơn và được cài đặt, ứng dụng rộng rãi trên nhiều thiết bị khác nhau như điện thoại, ipad, máy tính bảng, máy tính cá nhân v v
Cuối cùng, nhóm chúng em xin chân thành cảm ơn các thầy cô và đặc biệt là giảng viên hướng dẫn Nguyễn Thanh Tuấn đã giúp đỡ nhóm chúng em thực hiện
đề tài này
Tài liệu tham khảo:
http://brickbreakergames.blogspot.com/p/history.html
http://zetcode.com/tutorials/javagamestutorial/breakout/
http://en.wikipedia.org/wiki/Breakout_(video_game)
http://diendan.tinhocmo.net/archive/index.php/thread-6963.html