31 lines
984 B
C#
31 lines
984 B
C#
using System;
|
|
using GeometryTD.CustomUtility;
|
|
using UnityEngine;
|
|
|
|
namespace GeometryTD.Definition
|
|
{
|
|
[Serializable]
|
|
public sealed class AttackPayload
|
|
{
|
|
public int BaseDamage { get; set; }
|
|
public AttackPropertyType AttackPropertyType { get; set; }
|
|
public int SourceEntityId { get; set; }
|
|
public int ProjectileEntityId { get; set; }
|
|
public Vector3 OriginPosition { get; set; }
|
|
public TagRuntimeData[] TagRuntimes { get; set; } = Array.Empty<TagRuntimeData>();
|
|
|
|
public AttackPayload Clone()
|
|
{
|
|
return new AttackPayload
|
|
{
|
|
BaseDamage = BaseDamage,
|
|
AttackPropertyType = AttackPropertyType,
|
|
SourceEntityId = SourceEntityId,
|
|
ProjectileEntityId = ProjectileEntityId,
|
|
OriginPosition = OriginPosition,
|
|
TagRuntimes = InventoryCloneUtility.CloneTagRuntimes(TagRuntimes)
|
|
};
|
|
}
|
|
}
|
|
}
|