public static TrinityActor FindActor(SNOActor actorId, int marker = 0, float maxRange = 500, string internalName = "", Func <TrinityActor, bool> condition = null) { TrinityActor actor = null; if (actorId != 0) { if (marker != 0) { actor = BountyHelpers.ScanForActor(actorId, marker, (int)maxRange, condition); } else { actor = BountyHelpers.ScanForActor(actorId, (int)maxRange, condition); } } else if (!string.IsNullOrEmpty(internalName)) { actor = BountyHelpers.ScanForActor(internalName, (int)maxRange, condition); } else if (actorId == 0 && marker != 0) { actor = BountyHelpers.GetActorNearMarker(marker, 10f, condition); } return(actor); }