csharp
public readonly record struct GoapCapabilitiesWhich of a domain's actions one agent may use.
Remarks
⚠ A mask on the agent rather than a domain per capability set. A domain describes what a kind of agent can do; whether this particular one has a gun, a key or a broken leg is per agent, and a domain per permutation is a graph rebuild per permutation. Sixty-four actions is the limit of a mask, and an action past it is treated as allowed rather than silently forbidden — a domain that large is one nobody is masking.
Fields and properties (2)
public ulong BitsOne bit per action index.
public static GoapCapabilities AllEverything the domain has.
Methods (4)
public GoapCapabilities(ulong Bits)Which of a domain's actions one agent may use.
public bool Allows(int action)Whether an action is allowed.
public GoapCapabilities Without(int action)The same mask with one action turned off.
public GoapCapabilities With(int action)The same mask with one action turned on.
Used by (6)
- AiAgentVixen.Ai
- AiSystemVixen.Ai
- GoapPearTestsVixen.Ai.Tests
- GoapPlanQueueVixen.Ai
- GoapPlannerVixen.Ai
- GoapSnapshotVixen.Ai