using GameFramework; using GameFramework.Event; using UnityEngine; namespace GeometryTD.CustomEvent { public sealed class RepoItemClickedEventArgs : GameEventArgs { public static int EventId => typeof(RepoItemClickedEventArgs).GetHashCode(); public override int Id => EventId; public long ItemId { get; private set; } public Vector3 TargetPos { get; private set; } public static RepoItemClickedEventArgs Create(long itemId, Vector3 targetPos) { RepoItemClickedEventArgs args = ReferencePool.Acquire(); args.ItemId = itemId; args.TargetPos = targetPos; return args; } public override void Clear() { ItemId = 0; TargetPos = Vector3.zero; } } }