float SolveObjectiveDefence(LFAI.TMProblem problem) { float solutionParameter = 0f; return(solutionParameter); }
float SolvePerimeter(LFAI.TMProblem problem) { float solutionParameter = 0f; return(solutionParameter); }
float SolveOrderRequest(LFAI.TMProblem problem) { float solutionParameter = 0f; return(solutionParameter); }
float SolveFlightDanger(LFAI.TMProblem problem) { float solutionParameter = 0f; return(solutionParameter); }
void SolveTopProblem() { if (newProblems.Count == 0) { return; } LFAI.TMProblem problem = newProblems[newProblems.Count - 1]; float solutionParameter; switch (problem.ProbType) { case LFAI.TMProbType.flightBingo: solutionParameter = SolveFlightBingo(problem); break; case LFAI.TMProbType.flightInDanger: solutionParameter = SolveFlightDanger(problem); break; case LFAI.TMProbType.orderRequest: solutionParameter = SolveOrderRequest(problem); break; case LFAI.TMProbType.perimeter: solutionParameter = SolvePerimeter(problem); break; case LFAI.TMProbType.objectiveAttack: solutionParameter = SolveObjectiveAttack(problem); break; case LFAI.TMProbType.objectiveDefence: solutionParameter = SolveObjectiveDefence(problem); break; } problemsBeingSolved.Add(problem); newProblems.RemoveAt(newProblems.Count - 1); }
float SolveFlightBingo(LFAI.TMProblem problem) { float solutionParameter = 0f; // determine sector and its priority // evaluate if the flight can leave // if the flight can leave, parse available fuelers for closest // give move order to closest fueler // if not found, ignore // if the flight cant leave look for closest fueler // if found, put flight into refuel list // if not found, ignore return(solutionParameter); }