补充相关 UI
- 事件 UI:EventForm
- 选项:OptionItem
- 仓库 UI:RepoForm
- 组装槽:CombineSlotItem
- 组件列表槽:RepoItem
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace GeometryTD.Definition
|
||||
{
|
||||
/// <summary>
|
||||
/// 玩家背包聚合数据。
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public sealed class BackpackInventoryData
|
||||
{
|
||||
/// <summary>
|
||||
/// 背包金币。
|
||||
/// </summary>
|
||||
public int Gold { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 背包中的枪口组件实例。
|
||||
/// </summary>
|
||||
public List<MuzzleCompItemData> MuzzleComponents { get; set; } = new List<MuzzleCompItemData>();
|
||||
|
||||
/// <summary>
|
||||
/// 背包中的轴承组件实例。
|
||||
/// </summary>
|
||||
public List<BearingCompItemData> BearingComponents { get; set; } = new List<BearingCompItemData>();
|
||||
|
||||
/// <summary>
|
||||
/// 背包中的底座组件实例。
|
||||
/// </summary>
|
||||
public List<BaseCompItemData> BaseComponents { get; set; } = new List<BaseCompItemData>();
|
||||
|
||||
/// <summary>
|
||||
/// 背包中的防御塔实例。
|
||||
/// </summary>
|
||||
public List<DefenseTowerItemData> Towers { get; set; } = new List<DefenseTowerItemData>();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c39f9ad23ee94de9af2b3d9729f47d7f
|
||||
timeCreated: 1772105403
|
||||
@@ -0,0 +1,68 @@
|
||||
using System;
|
||||
|
||||
namespace GeometryTD.Definition
|
||||
{
|
||||
/// <summary>
|
||||
/// 防御塔独立属性快照。
|
||||
/// 注意:这里是塔实例的独立值,不通过组件引用实时计算。
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public sealed class DefenseTowerStatsData
|
||||
{
|
||||
public int AttackDamage { get; set; }
|
||||
public float DamageRandomRate { get; set; }
|
||||
public float RotateSpeed { get; set; }
|
||||
public float AttackRange { get; set; }
|
||||
public float AttackSpeed { get; set; }
|
||||
public AttackMethodType AttackMethodType { get; set; }
|
||||
public AttackPropertyType AttackPropertyType { get; set; }
|
||||
public TagType[] Tags { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 背包内防御塔实例数据。
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public sealed class DefenseTowerItemData
|
||||
{
|
||||
/// <summary>
|
||||
/// 防御塔实例唯一 Id。
|
||||
/// </summary>
|
||||
public long InstanceId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 防御塔显示名称。
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 防御塔品质。
|
||||
/// </summary>
|
||||
public RarityType Rarity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 当前耐久(0~100)。
|
||||
/// </summary>
|
||||
public float Endurance { get; set; } = 100f;
|
||||
|
||||
/// <summary>
|
||||
/// 构成该防御塔的枪口组件实例 Id。
|
||||
/// </summary>
|
||||
public long MuzzleComponentInstanceId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 构成该防御塔的轴承组件实例 Id。
|
||||
/// </summary>
|
||||
public long BearingComponentInstanceId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 构成该防御塔的底座组件实例 Id。
|
||||
/// </summary>
|
||||
public long BaseComponentInstanceId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 防御塔独立属性,不依赖组件对象引用。
|
||||
/// </summary>
|
||||
public DefenseTowerStatsData Stats { get; set; } = new DefenseTowerStatsData();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ca5782ae52464616bf2b45704feea0d5
|
||||
timeCreated: 1772105402
|
||||
@@ -0,0 +1,97 @@
|
||||
using System;
|
||||
|
||||
namespace GeometryTD.Definition
|
||||
{
|
||||
/// <summary>
|
||||
/// 背包内组件实例基类(非 DataTable,表示玩家持有物)。
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public abstract class TowerCompItemData
|
||||
{
|
||||
/// <summary>
|
||||
/// 组件实例唯一 Id。
|
||||
/// </summary>
|
||||
public long InstanceId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 组件配置 Id(对应 DataTable Id)。
|
||||
/// </summary>
|
||||
public int ConfigId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 组件槽位类型。
|
||||
/// </summary>
|
||||
public TowerCompSlotType SlotType { get; protected set; }
|
||||
|
||||
/// <summary>
|
||||
/// 组件名称。
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 组件品质。
|
||||
/// </summary>
|
||||
public RarityType Rarity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 组件当前耐久(0~100)。
|
||||
/// </summary>
|
||||
public float Endurance { get; set; } = 100f;
|
||||
|
||||
/// <summary>
|
||||
/// 组件约束(先沿用 DataTable 原定义)。
|
||||
/// </summary>
|
||||
public string Constraint { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 组件当前 Tag(实例态)。
|
||||
/// </summary>
|
||||
public TagType[] Tags { get; set; }
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public sealed class MuzzleCompItemData : TowerCompItemData
|
||||
{
|
||||
public MuzzleCompItemData()
|
||||
{
|
||||
SlotType = TowerCompSlotType.Muzzle;
|
||||
}
|
||||
|
||||
public int[] AttackDamage { get; set; }
|
||||
public float DamageRandomRate { get; set; }
|
||||
public AttackMethodType AttackMethodType { get; set; }
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public sealed class BearingCompItemData : TowerCompItemData
|
||||
{
|
||||
public BearingCompItemData()
|
||||
{
|
||||
SlotType = TowerCompSlotType.Bearing;
|
||||
}
|
||||
|
||||
public float[] RotateSpeed { get; set; }
|
||||
public float[] AttackRange { get; set; }
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public sealed class BaseCompItemData : TowerCompItemData
|
||||
{
|
||||
public BaseCompItemData()
|
||||
{
|
||||
SlotType = TowerCompSlotType.Base;
|
||||
}
|
||||
|
||||
public float[] AttackSpeed { get; set; }
|
||||
public AttackPropertyType AttackPropertyType { get; set; }
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public sealed class AccessoryItemData : TowerCompItemData
|
||||
{
|
||||
public AccessoryItemData()
|
||||
{
|
||||
SlotType = TowerCompSlotType.Accessory;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9f95a29d5bcf484aa053af1462365936
|
||||
timeCreated: 1772105401
|
||||
Reference in New Issue
Block a user