Faction play 1: typed doctrine on Faction and one flight per faction per zone
FactionDoctrine/RoleDoctrine (Faction key 17), Flight as the only writer of members' Target and Task, hail/grace/compliance, FollowTask/FollowState, agent removal on Entities removal, doctrine-catalog command, FlightTests. Not yet built or run; verification follows in later commits. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
4d664b537f
commit
8f42265de3
24 changed files with 812 additions and 42 deletions
|
|
@ -814,6 +814,9 @@ public abstract class Entity
|
|||
else _iffOverrides.Remove(other);
|
||||
}
|
||||
|
||||
// The override this entity holds on another, or null when it holds none (the derived rule decides).
|
||||
public bool? IffOverride(Entity other) => _iffOverrides.TryGetValue(other, out var hostile) ? hostile : (bool?) null;
|
||||
|
||||
public bool IsHostileTo(Entity other, bool recursive = false)
|
||||
{
|
||||
// An override decides only the stance of the entity that holds it. The recursive=true calls
|
||||
|
|
|
|||
Loading…
Reference in a new issue