make ships claim targets
This commit is contained in:
@@ -1,11 +1,22 @@
|
||||
#pragma once
|
||||
|
||||
class EntityAdmin;
|
||||
struct WorldTargeting;
|
||||
|
||||
// Acquires/validates a combat target for ships with weapons. Scores high only
|
||||
// when the ship's health is not low and a valid target is within sensor range.
|
||||
//
|
||||
// Target choice is claim-aware: each tick the desirability of every candidate is
|
||||
// scored from a configurable distance formula and reduced by a soft overclaim
|
||||
// penalty that scales with how many other ships already target it, spreading
|
||||
// ships across enemies instead of dogpiling the nearest one.
|
||||
class AttackEvaluator
|
||||
{
|
||||
public:
|
||||
explicit AttackEvaluator(const WorldTargeting& targeting);
|
||||
|
||||
void evaluate(EntityAdmin& admin);
|
||||
|
||||
private:
|
||||
const WorldTargeting* m_targeting;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user