Class QuestTemplate
Represents data that can be used to generate a quest.
public abstract class QuestTemplate : ITranslationArgument
- Inheritance
-
QuestTemplate
- Implements
- Derived
- Inherited Members
- Extension Methods
Constructors
QuestTemplate(IConfiguration, IServiceProvider)
protected QuestTemplate(IConfiguration templateConfig, IServiceProvider serviceProvider)
Parameters
templateConfigIConfigurationserviceProviderIServiceProvider
Fields
FormatColorQuestAsset
For SDG.Unturned.QuestAsset formatting.
public static readonly SpecialFormat FormatColorQuestAsset
Field Value
FormatType
public static readonly SpecialFormat FormatType
Field Value
QuestService
protected QuestService QuestService
Field Value
Properties
CanBeDailyQuest
If this quest type can be a daily quest.
public bool CanBeDailyQuest { get; set; }
Property Value
Name
The display name of this quest.
public string Name { get; }
Property Value
Presets
Pre-defined presets for quest states.
public IReadOnlyList<IQuestPreset> Presets { get; }
Property Value
ResetOnGameEnd
If this quest should be resetted when the game ends.
public bool ResetOnGameEnd { get; set; }
Property Value
Rewards
Rewards for completing the quest.
[JsonIgnore]
public IReadOnlyList<QuestRewardExpression> Rewards { get; }
Property Value
SendChatUpdates
If this quest should send updates in chat.
public bool SendChatUpdates { get; set; }
Property Value
ServiceProvider
[JsonIgnore]
public IServiceProvider ServiceProvider { get; }
Property Value
Text
Formatted text in the quest text. {0} should always be the progressed variable.
public TranslationList Text { get; }
Property Value
Type
[JsonIgnore]
public Type Type { get; }
Property Value
Methods
CreateState(CancellationToken)
Create a random state.
public abstract UniTask<IQuestState> CreateState(CancellationToken token = default)
Parameters
tokenCancellationToken
Returns
- UniTask<IQuestState>
CreateTracker(IQuestPreset, WarfarePlayer)
Create a quest tracker for this template from a pre-existing preset.
public abstract QuestTracker CreateTracker(IQuestPreset preset, WarfarePlayer player)
Parameters
presetIQuestPresetplayerWarfarePlayer
Returns
InitializeAsync(CancellationToken)
Read this quest template from the configuration it was created with.
public UniTask InitializeAsync(CancellationToken token = default)
Parameters
tokenCancellationToken
Returns
- UniTask
ReadPreset<TPreset>(IConfiguration, CancellationToken)
Read a preset from configuration.
public abstract UniTask<IQuestPreset?> ReadPreset<TPreset>(IConfiguration configuration, CancellationToken token) where TPreset : IQuestPreset
Parameters
configurationIConfigurationtokenCancellationToken
Returns
- UniTask<IQuestPreset>
Type Parameters
TPreset
ReadReward(IConfiguration, CancellationToken)
Read a reward and it's expression from configuration.
protected virtual UniTask<QuestRewardExpression?> ReadReward(IConfiguration configuration, CancellationToken token)
Parameters
configurationIConfigurationtokenCancellationToken
Returns
- UniTask<QuestRewardExpression>
ReadStateToPreset(IQuestPreset, IQuestStateConfiguration, CancellationToken)
Read a state to an existing preset.
public abstract UniTask ReadStateToPreset(IQuestPreset preset, IQuestStateConfiguration configuration, CancellationToken token)
Parameters
presetIQuestPresetconfigurationIQuestStateConfigurationtokenCancellationToken
Returns
- UniTask
Translate(ITranslationValueFormatter, in ValueFormatParameters)
Allows objects to define how they're translated in their own definition instead of creating a value converter.
public virtual string Translate(ITranslationValueFormatter formatter, in ValueFormatParameters parameters)
Parameters
formatterITranslationValueFormatterparametersValueFormatParameters
Returns
UpdateAsync(IConfiguration, CancellationToken)
Read this quest template from the configuration after it was created originally.
public UniTask UpdateAsync(IConfiguration newConfiguration, CancellationToken token = default)
Parameters
newConfigurationIConfigurationtokenCancellationToken
Returns
- UniTask