Bài 5. Khiến player bắn
Bây giờ, chúng ta cần khiến cho player
của chúng ta bắn. thêm một sprite vào màn hình, chúng ta sẽ sử dụng nó như một
viên đạn. chúng ta sẽ sử dụng một quả bóng tương tự mà chúng ta sử dụng cho player. Thay đổi tên của nó thành Projectile. Đồng thời thiết lập kích cỡ
của nó thành 10,10.
Đến Behavior và thêm cho nó
hành vi Bullet:
Điều chúng ta cần thiết lập cho viên đạn đó là sự tạo ra khi chúng ta
kích chuột. điều này không quá khó. Trở lại event sheet và thêm sự kiện Mouse. Sự kiện Mouse mà ta muốn thêm là
sự kiện On any click. Bởi vì trò
chơi này rất đơn giản, chúng ta sẽ sử dụng tùy chọn này. Nếu bạn muốn nối sự bắn
tới một nút xác định, bạn có thể lựa chọn On
click.
Đi tiếp và kích vào Add action,
sau đó là On any click và lựa chọn Spawn another object. Đối tượng chúng
ta muốn sản sinh ra đó là viên đạn.
Một khi bạn kích vào projectile,
hộp thoại sau sẽ hiện ra:
Hãy test thử game của bạn. bạn có thể di chuyển xung quanh và bắn viên đạn
tới vị trí chuột.
Chúng
ta phải tính đến mỗi lần sản sinh ra viên đạn, nó sẽ tiêu tốn một ít bộ nhớ. Vì
vậy chúng ta phải tiêu diệt viên đạn khi chúng ta không nhìn thấy nó. Nếu chúng ta không làm điều này thì trò chơi có thể sẽ bị giật lag; đây là vấn đề cực nghiêm trọng đối
với các thiết bị điện thoại.
Kích vào projectile và kích
vào Add behavior. Thêm hành vi Destroy outside layout. Nó sẽ tiêu diệt
viên đạn và giải phóng bộ nhớ khi viên đạn ra khỏi màn hình. Cửa sổ hành vi sẽ
trông như thế này:
Bạn cũng có thể thay đổi thuộc tính của viên đạn nếu bạn muốn. bạn có thể
thay đổi tốc độ, sự tăng tốc và trọng lực đồng thời dội lại vật rắn (bouch off
solid). Bạn có thể thiết lập góc và bạn có thể chọn liệu viên đạn sẽ được kích
hoạt hay ko.
Có một cách để những viên đạn xuất hiện thực tế hơn đó là thêm tùy chọn Gravity. Trọng lực trong trò chơi hoạt
động giống như trọng lực trong thế giới thực. hãy đi tiếp và thử nó.
WAITING FOR LUV
Bạn có muốn cải thiện khả năng thiết kế đồ họa của mình? Chắc hẳn các bạn cũng biết, nếu các dòng code là linh hồn của một trò chơi, thì đồ họa chính là bộ mặt của trò chơi đó. Đồ họa đẹp, dễ nhìn sẽ khiến trò chơi của bạn tăng tỉ lệ hấp dẫn người xem đến 90%. Hiện tại có hai công cụ hỗ trợ thiết kế đồ họa game tiện nhất mà mình biết, đó là Photoshop và Illustrator. Mình sẽ cố gắng tìm kiếm và chia sẻ các đồ họa game miễn phí cho các bạn tại blog này; tuy nhiên,
một trò chơi mà 100% do chính mình tạo ra vẫn hơn là đi cóp nhặt hình ảnh từ nơi khác đúng không nào. Tiện đây, mình có chia sẻ một khóa học thiết kế đồ họa Game 2D cho Mobile. Các bạn có thể tham khảo dưới đây để được giảm 40% học phí nhé.
Bài 6. Thêm kẻ địch
Thêm kẻ địch là cách tốt nhất để khiến trò chơi thêm sự phức tạp và vui
vẻ. hãy thêm một kẻ địch di chuyển theo người chơi. Thêm một sprite tới màn
hình. Thiết lập kích cỡ của nó là 30,30 và đặt tên nó là enemy.
Tiếp theo chúng ta tới event sheet và thêm sự kiện Every tick.
Một khi bạn có màn hình giống như trên, bạn có thể thêm hành động cho enemy sprite, chẳng hạn như Rotate toward position. Điền player.X vào hộp X và player. Y vào hộp Y. điều này sẽ thiết lập vị trí tới chỗ
X và Y của player.
Một khi bạn làm xong điều này, thêm một hành động khác. Tại thời điểm
này, chúng ta cần di chuyển kẻ địch xung quanh. Điều hướng Add action / Enemy / Move forward:
Chúng ta phải di chuyển kẻ địch xung quanh 1 khoảng cách nhất định.
Trong trường hợp này, chúng ta sẽ thiết lập khoảng cách là 1. Bạn có thể thiết
lập khoảng cách sang con số khác nếu bạn muốn.
Bây giờ kẻ địch liên tục hướng về vị trí player trong khi luôn di chuyển xung quanh player. Test thử game và cảm nhận nó.
Bài 7. Tiêu diệt kẻ địch
Hãy thêm một sự kiện khác. Lúc này, chúng ta muốn phá hủy kẻ địch và
viên đạn khi chúng va chạm vớí nhau. Điều hướng Add event / Projectile / On collision with another object:
Chọn Enemy trong hộp thoại vừa
xuất hiện:
Một khi bạn hoàn thành điều này, thêm một hành động và chọn projectile. Cuộn xuống đến khi bạn thấy Destroy. Điều này sẽ phá hủy viên đạn.
Test game của bạn và xem nó hoạt động. khi bạn chạy game, bạn sẽ thấy kẻ
địch đi xung quanh người chơi. Khi viên đạn bắn trúng kẻ địch, kẻ địch và viên
đạn sẽ bị tiêu diệt.
Bài 8. Thêm spawner
Bây giờ chúng ta cần thêm spawner. Một spawner sản sinh ra đối tượng
game. Đi tiếp và thêm sprite, nó sẽ trông như thế này. Đặt tên nó là spawner.
Cái chúng ta cần là thay đổi kích cỡ của spawner. Nháy đúp chuột vào spawner
và chọn Resize:
Sau đó thay đổi kích cỡ của nó thành 50,50 với sự giúp đỡ của tùy chọn Resize. Sau đó nhấp vào công cụ thùng
sơn để đổ đầy màu. Chúng ta làm điều này bởi vì chúng ta ko thể thấy spawner. Tôi khuyến khích tô cho spawner một màu sáng và rõ ràng. Chúng sẽ
sẽ chọn màu hồng:
Sau điều này, kích vào Close.
Bây giờ chúng ta phải sao chép spawner và đặt chúng ở khu vực trò chơi. Bạn có
thể giữ Ctrl để kéo spawner cho nhanh. Nếu nó không hoạt động, bạn có thể dùng
phương pháp copy-paste. Màn hình trò chơi sẽ trông như thế này:
Bây giờ, chúng ta cần thêm chức năng tới spawner. Trở lại event sheet
và thêm sự kiện Every X second:
Hay thêm một thời gian khoảng 2 giây trong hộp thoại Parameters for System: Every X second.
Điều này sẽ sản sinh ra kẻ thù ở mỗi spawner mỗi 2 giây:
Thêm hành động tới sự kiện này bởi Add
action / Spawner / Spawn another object. Chúng ta muốn sản sinh ra kẻ địch,
chính vì vậy hãy lựa chọn hộp thoại Parameters
for Spawner: Spawn another object:
Màn hình project sẽ trông như thế này khi bạn ấn vào Done:
Cái mà chúng ta cần để làm bây giờ là thêm một số logic khi kẻ địch đụng
trúng người chơi. Về cái này, chúng ta sẽ restart layout.
Sau đó, chúng ta sẽ thêm một hành động. đi tới System, lựa chọn Restart
layout. Điều này sẽ bắt đầu lại layout.
Test thử game. Thấy đó, bạn đã có một trò chơi bắn súng 2D. việc bạn cần
làm bây giờ là sửa đổi code theo ý bạn. bạn đã có một trò chơi bắn súng đơn giản
để chơi rồi – công việc của bạn là thêm nhiều chức năng hơn. Thêm đạn, kẻ thù
và những cơ chế game hấp dẫn khác.
Tổng kết
Trong chương này, chúng ta đã học được cách làm game bắn súng đơn giản. đây là thể loại rất hay được
nhiều người biết đến bởi vì chúng rất dễ chơi.
Trong chương tiếp theo. Chúng ta sẽ học cách tạo ra 1 game thủ thành (tower defense). Đây cũng là một
thể loại rất thú vị. nếu bạn chưa chơi bao giờ, hãy thử tra google để xem như
hoạt động như thế nào nhé.
Tham gia group tại đây để trao đổi thông tin cũng
như học hỏi thêm từ các thành viên khác nhé ^^.
Bản dịch do construct2vn.ga thực hiện
Ai sao chép hay chia sẻ hãy ghi nguồn và đưa link www.construct2vn.ga vào đầu bài chia sẻ nhé