Bức tường gạch
Thuộc phần Dự án trong hành trình Godot của Coddy. Bài học 5 trên 36.
Tiếp theo là các viên gạch: 5 hàng, mỗi hàng 8 viên, được tạo bởi main.gd khi trò chơi bắt đầu. Viên gạch là một cảnh, brick.tscn, mà bạn tải trước bằng preload rồi tạo thực thể bằng instantiate.
Vòng lặp for chạy một lần cho mỗi số. for row in 5: chạy với row lần lượt từ 0 đến 4. Một vòng lặp bên trong vòng lặp khác sẽ duyệt qua từng cột của mỗi hàng:
for row in 5:
for column in 8:
var brick = BRICK.instantiate()
brick.position = Vector2(68 + column * 72, 60 + row * 26)
add_child(brick)Các cột cách nhau 72 pixel và các hàng cách nhau 26 pixel. Như vậy sẽ có một khoảng trống nhỏ giữa các viên gạch có kích thước 64 x 20.
Mỗi hàng lấy màu từ một danh sách. Gán brick.color = COLORS[row] trước khi thêm viên gạch: viên gạch tự tô màu trong _ready(), hàm này chạy bên trong add_child.
const COLORS = [Color(1, 0.42, 0.42), Color(1, 0.78, 0.34), Color(0.49, 0.95, 0.75), Color(0.369, 0.635, 1), Color(0.75, 0.82, 0.95)]Thử thách
Trung bìnhXây một bức tường gồm 40 viên gạch.
- Trong
main.gd, thêmconst BRICK = preload("res://brick.tscn")và dòngCOLORSở trên. - Trong
_ready, tạo 5 hàng, mỗi hàng có 8 viên gạch tạiVector2(68 + column * 72, 60 + row * 26). - Đặt
brick.color = COLORS[row]trước khi thêm từng viên gạch bằngadd_child.
Nhấn Chơi: năm hàng gạch nhiều màu lấp đầy phía trên. Sau đó, nhấn Kiểm tra.
Tự làm thử
extends Node2D
func _ready():
pass
Tất cả bài học trong Dự án
1Dự án: Breakout
Thanh đỡ trong BreakoutGiữ thanh đỡ trong màn hình4Dự án: trò chơi khám phá hầm ngục
Khám phá hầm ngụcNhặt chìa khóaTự luyện tập: Playground Godot