Lớp Màn hình chơi Game (GameScr)

Một phần của tài liệu dacd_nguyen binh nguyen (Trang 46 - 47)

2 CHƢƠNG : PHÂN TÍCH THIẾT KẾ HỆ THỐNG

2.4 Thiết kế Game

2.4.8 Lớp Màn hình chơi Game (GameScr)

Lớp màn hình chơi Game là lớp chính để Game có thể vẽ, cập nhật các đối tƣợng viên bi, đích, hố đen, cấp độ, thời gian…

public class GameScr extends Screen { int level; int levelmax; int score; float time; Page page; enum GameState {

Ready, Running, Paused, GameOver, Win, Quit}

GameScr(Game game) {

super(game);

page = new Page();}

void update(float deltaTime) {} void present(float deltaTime) {}

}

State là một kiểu liệt kê, các phƣơng thức sẽ xử lý và chuyển đổi giữa các trạng thái dựa vào sự kiện xảy ra trong game, sau mỗi vòng lặp game, phƣơng thức update và present sẽ dựa vào sự thay đổi của trạng thái mà cập nhật, vẽ lại màn hình cho phù hợp.

Nguyễn Bình Nguyên | CCLT03C Trang 47

Ready, Running, Paused, GameOver, Win, Quit}

 Biến level lƣu thông tin cấp độ ngƣời chơi đạt đƣợc.

 Biến levelmax xác định cấp độ tối đa của Game.

 Biến score lƣu điểm của ngƣời chơi tại mỗi lƣợt.

 Biến time làm biến trung gian để tính thời gian.

 Đối tƣợng page là đối tƣợng bản đồ, đặt tên là Page.

Phƣơng thức khởi tạo GameScr, khởi tạo đối tƣợng và tạo mới bản đồ.

public GameScr(Game game) { super(game);

page = new Page(); }

Phƣơng thức update() cập nhật lại trạng thái game với trạng thái tƣơng ứng nhận từ biến state. Các trạng thái update() đƣợc chuyển tới chờ nhận sự kiện từ ngƣời chơi để cập nhật lại màn hình hoặc chuyển sang trạng thái khác.

Phƣơng thức present() vẽ bản đồ và vẽ màn hình tƣơng ứng với trạng thái nhận từ biến state. Các trạng thái present() dựa vào trạng thái để vẽ lại các đối tƣợng sau khi đƣợc cập nhật bởi các trạng thái update().

Một phần của tài liệu dacd_nguyen binh nguyen (Trang 46 - 47)

Tải bản đầy đủ (PDF)

(69 trang)