Class StatCatalog
- Namespace
- SurvivorsMaker.Core
- Assembly
- SurvivorsMaker.Core.dll
The list of stats a game uses. Effects that target an id outside the catalog are reported by StatBuild instead of silently creating a new stat.
public sealed class StatCatalog
- Inheritance
-
StatCatalog
- Inherited Members
Constructors
StatCatalog()
public StatCatalog()
StatCatalog(IEnumerable<StatDefinition>)
public StatCatalog(IEnumerable<StatDefinition> stats)
Parameters
statsIEnumerable<StatDefinition>
Properties
Count
public int Count { get; }
Property Value
this[string]
public StatDefinition this[string id] { get; }
Parameters
idstring
Property Value
Stats
public IReadOnlyList<StatDefinition> Stats { get; }
Property Value
Methods
Add(StatDefinition)
Adds a nonempty unique stat definition and returns this catalog; invalid ids are rejected.
public StatCatalog Add(StatDefinition stat)
Parameters
statStatDefinition
Returns
Contains(string)
Tests whether the catalog contains the supplied case-sensitive stat id.
public bool Contains(string id)
Parameters
idstring
Returns
IndexOf(string)
Position of the stat in the catalog, or -1.
public int IndexOf(string id)
Parameters
idstring
Returns
TryGet(string, out StatDefinition)
Looks up a stat definition by its case-sensitive id without adding it.
public bool TryGet(string id, out StatDefinition stat)
Parameters
idstringstatStatDefinition
Returns
Validate(IEnumerable<StatDefinition>)
Authoring errors: empty or duplicate ids, min above max, base outside limits.
public static List<string> Validate(IEnumerable<StatDefinition> stats)
Parameters
statsIEnumerable<StatDefinition>