public static void RequestTrackingFood(FoodTrackRequest _request) { ThreadStart threadStart = delegate { GetTracking().FindFood(_request, instance.FinishedProcessing); }; threadStart.Invoke(); }
public void FindFood(FoodTrackRequest _request, Action <FoodTrackResult> callback) { for (int i = 0; i < deadObjects.Count; i++) { TrackableObject possibleFood = deadObjects[i]; float foodDistance = Vector3.Distance(possibleFood.objectPosition, _request.requestingObject.objectPosition); if (foodDistance <= _request.requestRadius) { callback(new FoodTrackResult(possibleFood, true, _request.callback)); } else { callback(new FoodTrackResult(null, false, _request.callback)); } } }