public sealed class GameplayTagTableBuilderComposes a GameplayTagTable out of the names a content build collected.
Remarks
Add names in any order, including duplicates and children whose parents were never mentioned — Damage.Fire.Burn implies Damage and Damage.Fire, and the builder adds them, because a tag tree with a hole in it cannot be walked in pre-order and a designer writing one leaf should not have to declare its ancestors.
⚠ What it refuses is what a vocabulary's builder is for. Two names differing only in case, and two names whose Symbol collides, are both accepted silently by everything downstream and are both content bugs with no symptom until a rule matches the wrong thing. Refusing here turns each into a build error naming both spellings — the discipline BlackboardLayoutBuilder and MoveSet.Compose already follow.
Fields and properties (1)
public int CountHow many distinct tags have been named so far, implied parents included.
Methods (3)
public GameplayTagTableBuilder Add(string name)Adds a tag, and every ancestor it implies.
public GameplayTagTableBuilder AddRange(IEnumerable<string> names)Adds several tags.
public GameplayTagTable Build()Numbers the tree and produces the table.
Used by (9)
- DefinitionCatalogBuilderVixen.Gameplay
- EffectSetTestsVixen.Gameplay.Tests
- GameplaySubjectTestsVixen.Gameplay.Tests
- GameplayTagQueryTestsVixen.Gameplay.Tests
- GameplayTagSetTestsVixen.Gameplay.Tests
- GameplayTagTableVixen.Gameplay
- GameplayTagTableTestsVixen.Gameplay.Tests
- MatchmakerTestsVixen.Live.Matchmaking.Tests
- RequirementTestsVixen.Gameplay.Tests