Class SkillTree
Helper class to send skill trees to client, skills are organized into trees based on reflection, with skills
that have no required skills being root-level tree skills
Inheritance
System.Object
SkillTree
Implements
System.ComponentModel.INotifyPropertyChanged
Assembly: Eco.Gameplay.dll
Syntax
public class SkillTree : Object, IController, IViewController, IHasUniversalID, INotifyPropertyChanged
Constructors
SkillTree()
Declaration
Fields
ResearchProjectChangedEvent
Declaration
public static ThreadSafeAction<SkillTree> ResearchProjectChangedEvent
Field Value
Properties
AllSkillTrees
Declaration
public static SkillTree[] AllSkillTrees { get; }
Property Value
CachedSkillReqs
The requirements built from the tier.
Declaration
public SkillReqs CachedSkillReqs { get; }
Property Value
ControllerID
Declaration
public ref int ControllerID { get; }
Property Value
Type |
Description |
System.Int32 |
|
Discovered
Declaration
public bool Discovered { get; }
Property Value
Type |
Description |
System.Boolean |
|
DiscoveredBy
The user who Discovered the Skill.
Declaration
public User DiscoveredBy { get; }
Property Value
DiscoveredEvent
Declaration
public static ThreadSafeAction<SkillTree> DiscoveredEvent { get; }
Property Value
IngredientChildren
The collection of the skill tree children by its ingredients.
Declaration
public ICollection<SkillTree> IngredientChildren { get; set; }
Property Value
Type |
Description |
System.Collections.Generic.ICollection<SkillTree> |
|
IsProfession
Declaration
public bool IsProfession { get; }
Property Value
Type |
Description |
System.Boolean |
|
IsUsingSkillBook
True if there are recipes available for the skill book.
Declaration
public bool IsUsingSkillBook { get; set; }
Property Value
Type |
Description |
System.Boolean |
|
LevelToRecipeUnlocked
The map of recipes unlocked at each level.
Declaration
public Dictionary<int, List<RecipeFamily>> LevelToRecipeUnlocked { get; set; }
Property Value
Type |
Description |
System.Collections.Generic.Dictionary<System.Int32, System.Collections.Generic.List<RecipeFamily>> |
|
MarkedUpName
Declaration
public LocString MarkedUpName { get; }
Property Value
NonAbandonedPlayerCountAtEachLevel
Level for professions means 'how many specialties under that profession'. For specialties, means the level of the specialty.
Declaration
public List<int> NonAbandonedPlayerCountAtEachLevel { get; set; }
Property Value
Type |
Description |
System.Collections.Generic.List<System.Int32> |
|
Parent
Declaration
public SkillTree Parent { get; }
Property Value
ProfessionChildren
The children of the skill tree in profession/speciality basis.
Declaration
public SkillTree[] ProfessionChildren { get; }
Property Value
ProfessionSkillTrees
Declaration
public static SkillTree[] ProfessionSkillTrees { get; }
Property Value
RequiredSkillLevelsMap
The children of this skill based on its SkillBook ingredients. (research basis), The key is the child skill tree and the value is the level of the parent skill at which it can unlock at.
Declaration
public Dictionary<SkillTree, int> RequiredSkillLevelsMap { get; }
Property Value
Type |
Description |
System.Collections.Generic.Dictionary<SkillTree, System.Int32> |
|
Declaration
public bool RequiresScroll { get; }
Property Value
Type |
Description |
System.Boolean |
|
ResearchProject
The current active research project.
Declaration
public WorkOrder ResearchProject { get; set; }
Property Value
ResearchSkillTrees
Declaration
public static SkillTree[] ResearchSkillTrees { get; }
Property Value
ResearchWorkOrders
Current active workorders for the skill book that tech this skill.
Declaration
public ControllerList<WorkOrder> ResearchWorkOrders { get; set; }
Property Value
Root
Declaration
public SkillTree Root { get; }
Property Value
SkillBookItem
Declaration
public Item SkillBookItem { get; }
Property Value
SkillBookTable
Declaration
public Item SkillBookTable { get; }
Property Value
SkillItemIngredients
Declaration
public IngredientElement[] SkillItemIngredients { get; }
Property Value
Declaration
public Item SkillScrollItem { get; }
Property Value
Declaration
public string SkillScrollMarkedUpName { get; }
Property Value
Type |
Description |
System.String |
|
Specialty
Declaration
public SkillTree Specialty { get; }
Property Value
StaticSkill
The item in the global list of items representing the skill
Declaration
public Skill StaticSkill { get; }
Property Value
TimeDiscovered
Declaration
public double TimeDiscovered { get; }
Property Value
Type |
Description |
System.Double |
|
TotalProfessions
Declaration
public static int TotalProfessions { get; }
Property Value
Type |
Description |
System.Int32 |
|
TotalSpecialties
Declaration
public static int TotalSpecialties { get; }
Property Value
Type |
Description |
System.Int32 |
|
TreeResearchRank
Specifies the node depth for the research tree.
Declaration
public int TreeResearchRank { get; }
Property Value
Type |
Description |
System.Int32 |
|
Methods
BuildSkillTrees()
Declaration
public static void BuildSkillTrees()
ChildrenRecursive()
Declaration
public IEnumerable<SkillTree> ChildrenRecursive()
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<SkillTree> |
|
ChildrenRecursive(Func<SkillTree, Boolean>)
Declaration
public IEnumerable<SkillTree> ChildrenRecursive(Func<SkillTree, bool> condition)
Parameters
Type |
Name |
Description |
System.Func<SkillTree, System.Boolean> |
condition |
|
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<SkillTree> |
|
Initialize()
Declaration
InitializeSkillTrees()
Declaration
public static void InitializeSkillTrees()
IsDiscovered(Type)
Declaration
public static bool IsDiscovered(Type skillType)
Parameters
Type |
Name |
Description |
System.Type |
skillType |
|
Returns
Type |
Description |
System.Boolean |
|
OnWorkOrderUpdate(WorkOrder)
Declaration
public static void OnWorkOrderUpdate(WorkOrder workOrder)
Parameters
RootTreeFromSkill(Type)
Declaration
public static SkillTree RootTreeFromSkill(Type skillType)
Parameters
Type |
Name |
Description |
System.Type |
skillType |
|
Returns
SkillTreeFromSkill(Type)
Declaration
public static SkillTree SkillTreeFromSkill(Type skillType)
Parameters
Type |
Name |
Description |
System.Type |
skillType |
|
Returns
SpecialtyTreeFromSkill(Type)
Declaration
public static SkillTree SpecialtyTreeFromSkill(Type skillType)
Parameters
Type |
Name |
Description |
System.Type |
skillType |
|
Returns
ToString()
Declaration
public override string ToString()
Returns
Type |
Description |
System.String |
|
TryDiscover(Double, User)
Declaration
public void TryDiscover(double timeLearned, User discoverer)
Parameters
Type |
Name |
Description |
System.Double |
timeLearned |
|
User |
discoverer |
|
Events
PropertyChanged
Declaration
public virtual event PropertyChangedEventHandler PropertyChanged
Event Type
Type |
Description |
System.ComponentModel.PropertyChangedEventHandler |
|
Implements
System.ComponentModel.INotifyPropertyChanged
Extension Methods