1using System.Collections.Generic;
3using Newtonsoft.Json.Linq;
16 public readonly
string Name;
28 [JsonProperty(
"Conditions")]
29 private Dictionary<string, AchievementCondition>
_conditions =
new Dictionary<string, AchievementCondition>();
56 foreach (KeyValuePair<string, AchievementCondition> condition
in _conditions)
58 condition.Value.Clear();
66 public void Load(Dictionary<string, JObject> conditions)
68 foreach (KeyValuePair<string, JObject> condition
in conditions)
70 if (
_conditions.TryGetValue(condition.Key, out var value))
72 value.Load(condition.Value);
73 if (value.IsCompleted)
100 if (this.OnCompleted !=
null)
121 foreach (KeyValuePair<string, AchievementCondition> condition
in _conditions)
123 conditionsCompletedTracker.AddCondition(condition.Value);
131 foreach (
string key
in conditions)
133 conditionsCompletedTracker.AddCondition(
_conditions[key]);
150 for (
int i = 0; i < conditions.Length; i++)
158 if (
_conditions.TryGetValue(conditionName, out var value))
void UseConditionsCompletedTracker()
void AddConditions(params AchievementCondition[] conditions)
void UseConditionsCompletedTracker(params string[] conditions)
void SetCategory(AchievementCategory category)
IAchievementTracker GetConditionTracker(string name)
AchievementCompleted OnCompleted
void OnConditionComplete(AchievementCondition condition)
readonly LocalizedText Description
readonly LocalizedText FriendlyName
AchievementCategory _category
AchievementCondition GetCondition(string conditionName)
IAchievementTracker _tracker
delegate void AchievementCompleted(Achievement achievement)
void Load(Dictionary< string, JObject > conditions)
void UseTrackerFromCondition(string conditionName)
void AddCondition(AchievementCondition condition)
static int _totalAchievements
IAchievementTracker GetTracker()
void UseTracker(IAchievementTracker tracker)
Dictionary< string, AchievementCondition > _conditions
AchievementCategory Category
static LocalizedText GetText(string key)
Retrieves a LocalizedText object for a specified localization key. The actual text value can be retri...
Contains methods to access or retrieve localization values. The Localization Guideteaches more about ...
Contains the localization value corresponding to a key for the current game language....
static Terraria.Social.Base.AchievementsSocialModule Achievements
void ReportAs(string name)