Class StringParameterTemplate
- Namespace
- Uncreated.Warfare.Quests.Parameters
- Assembly
- Uncreated.Warfare.dll
Quest paramater template representing a set of possible values for randomly generated quests, or a set of allowed values for conditions.
[TypeConverter(typeof(StringParameterTemplateTypeConverter))]
public class StringParameterTemplate : QuestParameterTemplate<string>, IFormattable, IEquatable<QuestParameterTemplate<string>>
- Inheritance
-
StringParameterTemplate
- Implements
- Derived
- Inherited Members
Remarks
For kit names, use KitNameParameterTemplate.
Constructors
StringParameterTemplate()
protected StringParameterTemplate()
StringParameterTemplate(ReadOnlySpan<char>)
Create a template of it's string representation.
public StringParameterTemplate(ReadOnlySpan<char> str)
Parameters
strReadOnlySpan<char>
StringParameterTemplate(string)
Create a template of a constant value.
public StringParameterTemplate(string constant)
Parameters
constantstring
Remarks
Use AsSpan(string) to parse instead of passing as a constant.
StringParameterTemplate(string[], ParameterSelectionType)
Create a template of a set of values.
public StringParameterTemplate(string[] values, ParameterSelectionType selectionType)
Parameters
valuesstring[]selectionTypeParameterSelectionType
StringParameterTemplate(ParameterSelectionType)
Create a template of a wildcard set of values.
public StringParameterTemplate(ParameterSelectionType wildcardType)
Parameters
wildcardTypeParameterSelectionType
Remarks
Only Inclusive wildcards are supported.
Exceptions
- ArgumentException
Selective wildcard was used.
Properties
WildcardInclusive
A parameter value that matches any integer.
public static QuestParameterValue<string> WildcardInclusive { get; }
Property Value
Methods
CreateValue(IServiceProvider)
Creates a random value from this selective set, or a set of values if this is an inclusive set.
public override UniTask<QuestParameterValue<string>> CreateValue(IServiceProvider serviceProvider)
Parameters
serviceProviderIServiceProvider
Returns
- UniTask<QuestParameterValue<string>>
ReadJson(ref Utf8JsonReader)
Read from a JSON reader.
public static StringParameterTemplate? ReadJson(ref Utf8JsonReader reader)
Parameters
readerUtf8JsonReader
Returns
ReadValueJson(ref Utf8JsonReader)
Read a value from a JSON reader.
public static QuestParameterValue<string>? ReadValueJson(ref Utf8JsonReader reader)
Parameters
readerUtf8JsonReader
Returns
ToString()
Convert a parameter template back to a string.
public override string ToString()
Returns
TryParse(ReadOnlySpan<char>, out StringParameterTemplate)
Read a StringParameterTemplate from a string.
public static bool TryParse(ReadOnlySpan<char> str, out StringParameterTemplate template)
Parameters
strReadOnlySpan<char>templateStringParameterTemplate
Returns
TryParseFrom(ReadOnlySpan<char>)
Read a parameter template from a string.
public override bool TryParseFrom(ReadOnlySpan<char> str)
Parameters
strReadOnlySpan<char>
Returns
TryParseIntl(ReadOnlySpan<char>, out ParameterSelectionType, out ParameterValueType, out string?, out string[]?, bool)
protected static bool TryParseIntl(ReadOnlySpan<char> str, out ParameterSelectionType selType, out ParameterValueType valType, out string? constant, out string[]? list, bool isBasicStringParameter)
Parameters
strReadOnlySpan<char>selTypeParameterSelectionTypevalTypeParameterValueTypeconstantstringliststring[]isBasicStringParameterbool
Returns
TryParseValue(ReadOnlySpan<char>, out QuestParameterValue<string>)
Read a saved value of this StringParameterTemplate from a string.
public static bool TryParseValue(ReadOnlySpan<char> str, out QuestParameterValue<string> value)
Parameters
strReadOnlySpan<char>valueQuestParameterValue<string>