public PursueObjectType( int id, Func <T, bool> pursueWhenExp = null, Func <T, bool> convertWhenExp = null, ConvertByType convertBy = ConvertByType.Killing) : base(id, pursueWhenExp ?? (unit => true), convertWhenExp ?? (unit => false), convertBy) { }
protected PursueObjectTypeBase( int id, Delegate pursueWhen, Delegate convertWhen, ConvertByType convertBy = ConvertByType.Killing) { Id = id; PursueWhen = pursueWhen; ConvertWhen = convertWhen; ConvertBy = convertBy; }
public bool CanConvert(WoWObject woWObject, ConvertByType convertBy) { return(PursueObjects.Any(p => p.CanConvert(woWObject, convertBy))); }
public override bool CanConvert(WoWObject obj, ConvertByType convertBy) { return((Id == 0 || obj.Entry == Id) && ConvertBy == convertBy && obj is T && ((Func <T, bool>)ConvertWhen)((T)obj)); }
public abstract bool CanConvert(WoWObject obj, ConvertByType convertBy);