using UnityEngine; namespace Northbound { [CreateAssetMenu(fileName = "NewBuilding", menuName = "Northbound/Building Data")] public class BuildingData : ScriptableObject { [Header("Building Info")] public string buildingName; public GameObject prefab; [Header("Grid Size")] [Tooltip("Width in grid units")] public int width = 1; [Tooltip("Length in grid units")] public int length = 1; [Tooltip("Height for placement validation")] public float height = 2f; [Header("Placement Settings")] [Tooltip("Offset from grid position")] public Vector3 placementOffset = Vector3.zero; [Tooltip("Can rotate this building?")] public bool allowRotation = true; public Vector3 GetSize(int rotation) { // Rotation 0,180 = normal, 90,270 = swap width/length bool isRotated = (rotation == 1 || rotation == 3); float w = isRotated ? length : width; float l = isRotated ? width : length; return new Vector3(w, height, l); } } }