Tuesday, October 7, 2014

Cocos2d-x: Game Sky Defense (Phần 1)

 1 Tổng quan

Phần này chúng ta tiếp tục phát triển game có tên là Sky Defense. Các thiên thạch sẽ rơi xuống từ bầu trời, phá hủy thành phố bên dưới, nhiệm vụ của người chơi là sẽ đặt bom phá hủy các thiên thạch này, bảo vệ thành phố.




Các thiên thạch sẽ liên tục rơi xuống từ bầu trời, tốc độ rơi càng nhanh khi thời gian chơi kéo dài. Người chơi sẽ đặt bom bằng cách touch lên màn hình, quả bom sẽ lớn dần, đến một mức nhất định thì người chơi touch lần nữa bom sẽ phát nổ, tạo ra sóng xung lực phá vỡ các thiên thạch.


Mỗi thiên thạch rơi xuống thành phố sẽ phá hủy một lượng “máu” của thành phố, khi “máu” về 0 xem như thất bại.


Qua phần này chúng ta sẽ làm quen với các khái niệm

- Sprite Sheet

- Action

- Sử dụng nhiều hình ảnh để dựng nên một animation.

- Sử dụng font bitmap

2 Phân tích sơ bộ


Với game này chúng ta trước hết xác định các layer cho các đối tượng trong game

- Background

- Thành phố
  • Thành phố sẽ chia làm 2 layer, một là thành phố đằng xa, theo chiều sâu, một layer là thành phố phía gần
  • Khi một thiên thạch rơi xuống, để tạo cảm giác rơi vào giữa thành phố, ta sẽ cho layer của thiên thạch nằm giữa 2 layer này của thành phố
  • Đám cây cối có thể đặt ở layer của thành phố

- Mây: các đám mây trôi bên trên thành phố

- Thiên thạch: các thiên thạch rơi xuống thành phố

- Bom: đặt bom

- Text: các phần hiển thị chữ, nội dung sẽ thuộc layer trên cùng này

Và cũng như game trước, chúng ta sẽ chỉ dùng thuộc tính Z-Order để phân biệt “layer” này, tránh sử dụng quá nhiều đối tượng Layer thật sự trong game. Về các lớp đối tượng trong game, nhận thấy không có các đối tượng sprite có các thuộc tính đặc biệt khác nên chúng ta sẽ không cần phải định nghĩa thêm các lớp Sprite như game Air Hockey. 

1 comment: