using System; using Newtonsoft.Json; using UnityEngine; namespace GeometryTD.Definition { /// /// 背包内防御塔实例数据。 /// [Serializable] public sealed class TowerItemData { /// /// 防御塔实例唯一 Id。 /// public long InstanceId { get; set; } /// /// 防御塔显示名称。 /// public string Name { get; set; } /// /// 防御塔品质。 /// public RarityType Rarity { get; set; } public bool IsParticipatingInCombat { get; set; } /// /// 构成该防御塔的枪口组件实例 Id。 /// public long MuzzleComponentInstanceId { get; set; } /// /// 构成该防御塔的轴承组件实例 Id。 /// public long BearingComponentInstanceId { get; set; } /// /// 构成该防御塔的底座组件实例 Id。 /// public long BaseComponentInstanceId { get; set; } /// /// 防御塔独立属性,不依赖组件对象引用。 /// public TowerStatsData Stats { get; set; } = new TowerStatsData(); [JsonIgnore] public Sprite ComposedIconSprite { get; set; } [JsonIgnore] public string ComposedIconKey { get; set; } } }