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