1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ án game mini game square king

38 609 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 38
Dung lượng 7,44 MB

Nội dung

Game có nhiều phiên bản và hầu hết ở dạng game flash chơi trên máy tính: • Boxo miniclip : Boxo là một game mini có cách chơi hấp dẫn, 2 người chơi thay phiên nhau gạch các đường thẳng v

Trang 1

TRƯỜNG CAO ĐẲNG NGHỀ ISPACE

KHOA: CÔNG NGHỆ THÔNG TIN NGÀNH: LẬP TRÌNH MOBILE

Trang 2

LỜI CẢM ƠN

Trước tiên, em xin được gửi lời cảm ơn đến tất cả quý thầy cô đã tham gia giảng dạy Trường Cao đẳng nghề CNTT iSpace vì đã truyền đạt những kiến thức hữu ích làm cơ sở cho em thực hiện đồ án này

Em cũng xin chân thành cảm ơn đến thầy Lê Hồng Kỳ, người đã tận tình hướng dẫn, tạo mọi điều kiện thuận lợi để em hoàn thành tốt đồ án

Sau cùng em xin gửi lời biết ơn sâu sắc đến gia đình vì đã luôn tạo điều kiện cho em trong suốt quá trình học tập cũng như thực hiện đồ án

Hồ Chí Minh, tháng 06 năm 2015

Trân trọng

Trang 3

sẽ được cộng hoặc trừ số điểm tương ứng Sau khi khoanh hết tất cả các ô vuông , ai

là người có số điểm cao hơn sẽ giành chiến thắng

Trang 4

và công việc

Đặc biệt trong ngành phần mềm, game là một lĩnh vực đặc biệt, đang có bước phát triển mạnh mẽ, khi mà nhu cầu giải trí trên các thiết bị di động của người sử dụng ngày một tăng cao Do đó, lập trình game trên các thiết bị di động đang là một

xu hướng tất yếu của các nhà làm phần mềm

Điện thoại Android với số lượng người dùng đông đảo, cùng với sự đa dạng về cấu hình, đa dạng về chủng loại, đang là mảnh đất màu mỡ cho các nhà phát triển game Do đó, google cũng đã hỗ trợ Android rất nhiều những thư viện để lập trình game hiệu quả, trong đó có thể kể đến OpenGL, một thư viện đồ họa rất mạnh mẽ Với sự phát triển mạnh mẽ như vậy của Android, và lập trình game trên Android, cơ hội cho lập trình viên là rất lớn Vì vậy, nhóm đã chọn đồ án “Lập trình game trên Android” Trong đồ án này, nhóm sẽ trình bày cái nhìn cơ bản về lập trình game trên Android và xây dựng chương trình demo

Trang 5

CHƯƠNG 1: TỔNG QUAN

1.1 TÌNH HÌNH TRONG VÀ NGOÀI NƯỚC

Dot & Box là một game trí tuệ được ra đời năm 1889 bởi nhà toán học

Édouard Lucas Với sự đơn giản trong cách chơi ( chỉ cần 1 cấy bút chì và giấy ) đã tạo ra cho con người ở thời điểm đó một trò chơi rất thú vị

Game có nhiều phiên bản và hầu hết ở dạng game flash chơi trên máy tính:

• Boxo miniclip : Boxo là một game mini có cách chơi hấp dẫn, 2 người chơi thay phiên nhau gạch các đường thẳng vào các ô, người nào gạch được đường thẳng để đóng thành 1 ô thì ăn ô đó và sẽ có thêm 1 lượt đi,

ai giành được số điểm cao hơn sẽ giành chiến thắng

• Dot and boxes :Dot and boxes là phiên bản game đơn giản hơn với chỉ các đường

kẻ và ô vuông, người nào ăn được nhiều ô vuông hơn sẽ chiến thắng

Ở trong nước thì hiện tại em chưa thấy phiên bản nào của Dot & Box

- Chương 2: Phân tích và thiết kế trò chơi

- Chương 3: Xây dựng trò chơi hoàn chỉnh

Trang 6

CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ2.1 PHÂN TÍCH

Vì cấu trúc trò chơi gốc khá đơn giản, nên ở phiên bản Square King sẽ không thay đổi nhiều về cách chơi, nhưng lối chơi sẽ khác rất nhiều

Square King sẽ được viết hoàn toàn bằng code Android ( không sử dụng bất

Trang 7

2.2.2 Giao diện chính

Ở phần này nhóm em thiết kế logo trò chơi (ImageView) kết hợp với các nút bấm ( Image button) để thể hiện màn hình này.Kết hợp bên ngoài là RelativeLayout bên trong là các LinearLayout

Hình 2.2 Màn hình menu

Trang 8

2.2.3 Giao diện 1 người chơi (Chơi với máy)

Vì là chơi với máy nên nhóm em chọn ra 3 mức độ khác nhau

- Mức độ dễ: Chỉ cần cao điểm hơn máy là sẽ thắng

- Mức độ bình thường: Phải ăn hết 3 ngôi sao mới thắng

- Mức độ khó: Ăn hết 3 ngôi sao và không ăn phải bom

Hình 2.3 Chọn mức độ chơi

Trang 9

Hình 2.4 Dễ Hình 2.5 Thường Hình 2.6 Khó

2.2.4 Giao diện 2 người chơi ( Trên 1 máy).

Đây là giao diện chính của trò chơi, được tạo ra bằng GridView chứa 25 ô vuông giống nhau, trên mỗi ô vuông sẽ là các vật phẩm ngẫu nhiên ( bom, ngôi sao,bọ, tiền vàng) sẽ có các mức thưởng phạt ( cộng hoặc trừ điểm ) khác nhau.Phần này hoàn toàn xử lí sự kiện GridView mỗi khi chạm vào giữa 2 cạnh left right của 2 ô kề nhau ( hoặc bottom hoặc top ) thì sẽ vẽ 1 đường thẳng giữa chúng

Hình 2.7 Giao diện 2 người

Trang 11

2.2.6 Màn hình thoát.

Đơn giản là Alert Dialogthông báo khi người dùng nhấnnút trở về

Hình 2.12 Sự kiện nút thoát

Trang 12

CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH3.1 CÀI ĐẶT.

Trang 13

B1.Cài đặt JDK:

Hình 3.2 Cài đặt JDK

B2 Giải nén Eclipse và copy ADT vào thư mục Eclipse

Hình 3.3 Giải nén tập tin Eclipse

Trang 14

Hình 3.4.Sao chép ADT vào thư mục Eclipse

B3 Chạy Eclipse và bắt đầu cài Android Plugin

B3.1.Chạy Eclipse với quyền của Administrator

Hình 3.5 Chạy Eclipse với quyền Admin

Trang 15

Hình 3.6 Chọn thư mục để làm việc

Giao diện Eclipse như sau:

Hình 3.7 Giao diện Eclipse

Trang 16

B3.2.Cài ADT :

Bạn vào phần Help -> Install New Software

Hình 3.8 Chọn Install New Software

Hình 3.9 Nhấn chọn Add

Trang 17

Hình 3.10 Nhập tên ADT và đường dẫn

Bạn nhập tên tại mục Name là: ADT

Sau đó chọn Archive để hiển thị cửa sổ giúp bạn tìm đến tập tin ADT mà bạn

đã download về trước đó, rồi chọn OK

Hình 3.11 Chọn đường dẫn ADT

Trang 18

Và chọn OK :

Hình 3.12 Giao diện sau khi chọn đường dẫn ADT

Sau đó chọn Select All

Hình 3.13 Chọn Select All

Trang 20

Chọn Finish.

Hình 3.16 Giao diện khi chọn Finish

Đợi 1 lúc cho đến khi hiển thị cảnh báo như sau :

Hình 3.17 Giao diện cảnh báo truy cập

Trang 21

Chọn Yes để khởi động lại Eclipse

Hình 3.18 Chọn Yes và khởi động lại Eclipse

Giao diện chương trình Eclipse sẽ xuất hiện biểu tượng như sau

Hình 3.19 Giao diện Eclipse sau khi cài đặt ADT

Trang 22

Chọn biểu tượng hình mũi tên đi xuống chỗ gạch đỏ ở hình 3.19 để update phiên bản eclipse.

Hình 3.20 Giao diện update.

Và bạn hãy chọn các phần trong : Tool, Android, Extras tương ứng với các phiên bản Android bạn muốn

Hình 3.21 Cập nhật phiên bản Android

Trang 23

Chọn Install

Hình 3.22 Màn hình các gói đã tải

Chọn Accept All

Hình 3.23 Màn hình chọn Accept All

Trang 24

Sau đó chọn Install Và đợi 1 thời gian Lưu ý phần này cần có kết nối mạng

để cài đặt

Hình 3.24 Màn hình cài đặt các gói mở rộng extras

Vậy là chúng ta đã cài đặt xong môi trường để lập trình Android

Trang 25

3.2 VIẾT XỬ LÍ.

3.2.1 Tạo project.

Mở eclipse chọn File - > New -> Android Application Project

Hình 3.25 Tạo mới Project

Trang 26

Chọn Next -> Next sau đó chọn biểu tượng cho trò chơi và next rồi nhấn finish

Hình 3.26 Chọn biểu tượng cho trò chơi

3.2.2 Tạo màn hình mở đầu ( SplashScreen )

Mỗi trò chơi hiện nay đều có một màn hình để giới thiệu cũng như để xử lí thời gian trễ khi hệ thống đang tải các dữ liệu trò chơi,

Ở đây nhóm em dùng 2 file class để xử lí màn hình này

Sử dụng Progressbar , TextView

Hình 3.27 Các tập tin SplashScreen

Trang 27

Tập tin LoadingTask có chức năng xử lí đa tiến trình AsyncTask để xử lí phần loading 100% của progress bar và interface LoadingTaskFinishedListener để sử dụng sau này.

Gọi phương thức xử lí downloadResources() xử lí đếm từ 1 đến 100% bằng

Trang 28

3.2.3 Giao diện màn hình trò chơi

Phần này xử lí bằng một Activity bao gồm các ImageButton và ImageView

để hiển thị logo trò chơi

Màn hình này được xử lí bằng xml với Relativelayout và LinearLayout

Tập tin OptionMenu implement OnClickListener để xử lí tương tác các menu trong trò chơi

Dùng Switch case để xử lí

Trang 29

3.2.4 Giao diện ngườichơi với máy (AI)

Đây là phần xử lí giao diện người chơi với máy, khi người chơi lựa chọn từ menu trò chơi

Với giao diện có 3 sự lựa chọn cấp độ chơi : bình thường , dễ và khó

bằng tập tin LevelActivity

Cách xử lí 3 mục này tương tự với xử lí màn hình chính nên em sẽ không đề cập lại ở đây

Xử lí khi người dùng chọn cấp độ:

- Khi người dùng chọn cấp độ chơi , màn hình này sẽ gửi 1 thông điệp và

mở màn hình 1 người chơi lên thông qua câu lệnh Intent

Trang 30

- Tập tin OnePlay : là tập tin giao diện chơi game chính thức với máy

sử dụng điều khiển GridView gồm 25 ô, một số ô sẽ chứa các vật phẩm bất kì ( bom,vàng, kim cương, bọ)

- Về phần xử lí máy chơi : Nhóm em dùng AsyncTask cùng với 1 tập tin Common để xử lý máy tự động chơi với phương thức autoplay(i,j)

i và j là tọa độ máy đánh khi người chơi đã đánh xong chi tiết có thể xem trong source code kèm theo

Trang 31

Ở tập tin OnePlay có các phương thức xử lí như:

- OpenBoxo ( khi 4 cạnh ô vuông đã được đánh hết)

- SetcurrentTurn :Xử lí chuyển lượt chơi của người chơi và máy khi không khoanh được hình vuông trong lượt chơi của mình

Trang 32

- setImageLineAnimation ( xử lí chuyển động khi vẽ đường nối )

phương thức này xử lí khi người chơi hoặc máy vẽ đường nối hình

vuông

- Showwinerform( xử lí hiện thông tin người thắng cuộc)

- Onclick ( xử lí khi người chơi hoặc máy chạm vào cạnh hình vuông hay khi người chơi nhân nút chơi lại )

Trang 33

- Cuối cùng ở trong onCreate xử lí âm thanh và thông báo khi người chơi chọn mức độ chơi.

Các phương thức AlertDialog đều được xử lí trong tập tin Common

3.2.5 Giao diện 2 người chơi

Màn hình giao diện 2 người chơi giống y hệt màn hình OnePlay chỉ khác ở một số điểm như:

- Không có phần của Máy chơi( autoplay,AsyncTask)

- Có thêm các phương thức như CheckisFinish,ChecktoDraw

Ở đây nhóm em sẽ không nhắc lại các phần giống với OnePlay ở trên Mà sẽ tập trung vào các phương thức thêm vào

- Phương thức CheckisFinish (kiểm tra khi tất cả các ô trên màn hình đã được mở)

Trang 34

- Phương thức ChecktoDraw (xử lí kiểm tra khi một ô được hoàn thành

kiểm tra khi số cạnh được vẽ bằng 4)

Trang 35

3.2.6 Giao diện màn hình giúp đỡ

Đây là màn hình giúp người chơi có thể hiểu sơ bộ cách chơi của trò chơi

Ở đây nhóm em sử dụng một Dialog cùng với một ImageView

Dành riêng một Activity để xử lí giao diện này

Sau đó dùng intent để chuyển qua màn hình này từ OptionMenu

Trang 36

3.2.7 Các tập tin khác.

Ngoài ra trong trò chơi này chúng em còn sử dụng các tập tin như:

- BoxoAdapter : adapter của các ô trong trò chơi

- FlipAnimation và FlipAnimationFactory (Xử lí lúc lật ô trong trò chơi)

- Tập tin Constant: Đặt các giá trị hằng số.

MediaSound: Quản lý âm thanh trong trò chơi

Section : Đặt các map trong trò chơi ( vị trí các ô có vật phẩm trong trò chơi)

Trang 37

KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂNKẾT QUẢ ĐẠT ĐƯỢC:

Qua quá trình nghiên cứu về trò chơi Square King, đồ án đã làm được một số công việc sau:

- Nghiên cứu về boar game, làm game đơn giản chạy trên hệ điều hành Android

- Nghiên cứu về GridView trong xử lí game board Android

- Hoàn thành được một sản phẩm game không những chơi được mà còn thú vị và hấp dẫn

HƯỚNG PHÁT TRIỂN:

Do thời gian làm đồ án có hạn, vàchưa có nhiều kinh nghiệm nên trò chơi còn thiếu một số phần sẽ phát triển thêm như :

- Làm chế độ chơi game trực truyến ( Thông qua Google Play Service)

- Làm chế độ chơi game thông qua bluetooth, cùng sóng wifi nội bộ

Trang 38

TÀI LIỆU THAM KHẢO

<http://dotsandboxes.org/>

[4] SinhvienIT.com

BẢNG PHÂN CHIA CÔNG VIỆC

1 Xử lí người chơi với máy,hỗ trợ xử lí game 2

3 Xử lí 2 người chơi, âm thanh, đồ họa Đỗ Xuân Sinh

4 Xử lí các tập tin khác , xử lí giao diện các

màn hình

Bùi Phú Vinh

Ngày đăng: 07/05/2016, 23:53

TỪ KHÓA LIÊN QUAN

w