public override ControlInput GetControlInput(float dt, ControlInput original) { host.Target = null; foreach (IControlable closeone in closeones) { if (targetingInfo.MeetsRequirements(FactionInfo.GetTargetingType(host, closeone))) { host.Target = closeone; break; } } return(original); }
public bool CanTarget(IControlable other) { return(targetableTypes.IsAll || targetableTypes.MeetsRequirements(FactionInfo.GetTargetingType(source, other))); }
public bool CanEffect(IControlable controlable) { return((!exhausted) && (effectsWho.IsAll || effectsWho.MeetsRequirements(FactionInfo.GetTargetingType(Host, controlable)))); }