Menu
CoddyTech

Dữ liệu tháp

Bài học 14 trên 25 trong khóa học Game Unity: thủ thành của Coddy.

Một tháp thứ hai sắp xuất hiện, tháp Cannon, với bộ chỉ số riêng. Cũng như kẻ địch, các chỉ số được chuyển vào một asset, TowerData, mỗi loại có một asset: dự án có ArrowData (giá 50, sát thương 2, tầm bắn 4.5, fireRate 1.5). Prefab lưu thông tin về hình dáng của tháp, còn tập lệnh Tower trỏ đến asset của nó.

[CreateAssetMenu] phía trên lớp ScriptableObject sẽ thêm lớp này vào menu Create của Unity, để bạn có thể tạo asset mới trong Editor. Asset của kẻ địch có thuộc tính này:

[CreateAssetMenu(fileName = "NewEnemy", menuName = "Tower Defense/Enemy Data")]
public class EnemyData : ScriptableObject
challenge icon

Thử thách

Trung bình

Chuyển các chỉ số của từng tháp vào một tài sản TowerData.

  1. Trong TowerData.cs, thêm [CreateAssetMenu] và các trường public towerName (chuỗi), cost và damage (số nguyên), range và fireRate (số thực).
  2. Trong Tower, thay bốn trường đó bằng public TowerData data; rồi đọc data.range, data.damage và data.fireRate.
  3. Trong BuildManager, thanh toán towerPrefab.data.cost.

Nhấn Chơi: Arrow chiến đấu như trước, nhưng giờ dùng ArrowData. Sau đó nhấn Kiểm tra.

Tự làm thử

using UnityEngine;

// Sẽ bổ sung sau: các chỉ số của một loại tháp, dưới dạng asset.
public class TowerData : ScriptableObject
{
}

Tất cả bài học trong Game Unity: thủ thành

Tự luyện tập: Playground Unity