public override object GetParameter(AiContextVariable param) { switch (param) { case AiContextVariable.DistanceToTarget: return(DistanceToEnemy); case AiContextVariable.None: return(null); case AiContextVariable.Target: return(target); case AiContextVariable.Owner: return(owner); case AiContextVariable.DistancesToEnemies: return(distancesToEnemies); case AiContextVariable.DistanceFromStartingPoint: return(DistanceFromStartingPoint); case AiContextVariable.Covers: return(covers); case AiContextVariable.DistancesToCover: return(distancesToCover); case AiContextVariable.TimeOfDay: return(TimeOfDay); default: throw new ArgumentOutOfRangeException(nameof(param), param, null); } }
public abstract object GetParameter(AiContextVariable param);