Class Skill
Inheritance
System.Object
Skill
Implements
System.ComponentModel.INotifyPropertyChanged
Assembly: Eco.Gameplay.dll
Syntax
[ItemGroup("Skills")]
public abstract class Skill : Item, IItem, ILinkableParameterized<LinkConfig>, IHasIcon, IController, IViewController, IHasUniversalID, ILinkableParameterized<int>, ILinkable, INotifyPropertyChanged, IThreadSafeSubscriptions, ISubscriptions<ThreadSafeSubscriptions>, ISubscriptions
Constructors
Skill()
Declaration
Fields
CalculateStarsNeededForSpecialty
Determines star cost for a specialty, can be overriden by mods.
Declaration
public static Func<User, Type, int> CalculateStarsNeededForSpecialty
Field Value
Type |
Description |
System.Func<User, System.Type, System.Int32> |
|
Properties
AddStrategy
Declaration
public virtual AdditiveStrategy AddStrategy { get; }
Property Value
AllSkills
Declaration
public static Skill[] AllSkills { get; }
Property Value
CanBeRefunded
Declaration
public virtual bool CanBeRefunded { get; }
Property Value
Type |
Description |
System.Boolean |
|
Education
Declaration
public float Education { get; set; }
Property Value
Type |
Description |
System.Single |
|
Experience
Declaration
public float Experience { get; set; }
Property Value
Type |
Description |
System.Single |
|
ExperienceToLevel
Declaration
public float ExperienceToLevel { get; }
Property Value
Type |
Description |
System.Single |
|
IsRoot
Declaration
public bool IsRoot { get; }
Property Value
Type |
Description |
System.Boolean |
|
IsSpecialty
Declaration
public bool IsSpecialty { get; }
Property Value
Type |
Description |
System.Boolean |
|
Level
Declaration
public int Level { get; }
Property Value
Type |
Description |
System.Int32 |
|
MaxLevel
Declaration
public virtual int MaxLevel { get; }
Property Value
Type |
Description |
System.Int32 |
|
Multiplier
Declaration
public float Multiplier { get; }
Property Value
Type |
Description |
System.Single |
|
MultiStrategy
Declaration
public virtual MultiplicativeStrategy MultiStrategy { get; }
Property Value
OnSkillsChanged
Declaration
public static ThreadSafeAction OnSkillsChanged { get; }
Property Value
PercentTowardsNextLevel
Declaration
public float PercentTowardsNextLevel { get; }
Property Value
Type |
Description |
System.Single |
|
Prerequisites
Declaration
public RequiresSkillAttribute[] Prerequisites { get; }
Property Value
RootSkillTree
Declaration
public SkillTree RootSkillTree { get; }
Property Value
SkillTree
Declaration
public SkillTree SkillTree { get; }
Property Value
SpecialtySkillTree
Declaration
public SkillTree SpecialtySkillTree { get; }
Property Value
Declaration
public int StarsSpent { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
Subscriptions
Declaration
public ref ThreadSafeSubscriptions Subscriptions { get; }
Property Value
Talents
Declaration
public List<TalentGroup> Talents { get; }
Property Value
Type |
Description |
System.Collections.Generic.List<TalentGroup> |
|
Teacher
Declaration
public User Teacher { get; set; }
Property Value
Tier
Declaration
public virtual int Tier { get; }
Property Value
Type |
Description |
System.Int32 |
|
TimeLearned
Declaration
public double TimeLearned { get; }
Property Value
Type |
Description |
System.Double |
|
Title
Declaration
public virtual string Title { get; }
Property Value
Type |
Description |
System.String |
|
Methods
BuildUnlocks()
Declaration
public static void BuildUnlocks()
Clone()
Declaration
public override Item Clone()
Returns
Overrides
DebugSetLevel(Int32)
Declaration
public void DebugSetLevel(int level)
Parameters
Type |
Name |
Description |
System.Int32 |
level |
|
ForceSetLevel(User, Int32)
Declaration
public void ForceSetLevel(User user, int level)
Parameters
Type |
Name |
Description |
User |
user |
|
System.Int32 |
level |
|
InitializeSkills()
Static skill initializer.
Declaration
public static void InitializeSkills()
IsDiscovered()
Declaration
public bool IsDiscovered()
Returns
Type |
Description |
System.Boolean |
|
Learn(User, Boolean, Boolean, Boolean)
Declaration
public Task<Result> Learn(User user, bool selfTeach, bool spendSkillPoints = true, bool force = false)
Parameters
Type |
Name |
Description |
User |
user |
|
System.Boolean |
selfTeach |
|
System.Boolean |
spendSkillPoints |
|
System.Boolean |
force |
|
Returns
Type |
Description |
System.Threading.Tasks.Task<Result> |
|
LevelUpMax(User)
Declaration
public void LevelUpMax(User user)
Parameters
Type |
Name |
Description |
User |
user |
|
NameAndLevel(Int32, Boolean)
Declaration
public LocString NameAndLevel(int currentLevel, bool showText)
Parameters
Type |
Name |
Description |
System.Int32 |
currentLevel |
|
System.Boolean |
showText |
|
Returns
OnLearned(User)
Declaration
public virtual void OnLearned(User user)
Parameters
Type |
Name |
Description |
User |
user |
|
OnLevelUp(User)
Declaration
public virtual void OnLevelUp(User user)
Parameters
Type |
Name |
Description |
User |
user |
|
OnLinkClicked(TooltipOrigin, TooltipClickContext, User)
Declaration
public override void OnLinkClicked(TooltipOrigin origin, TooltipClickContext clickContext, User user)
Parameters
Overrides
OnReset(User)
Declaration
public virtual void OnReset(User user)
Parameters
Type |
Name |
Description |
User |
user |
|
ResetTalents(User)
Declaration
public void ResetTalents(User user)
Parameters
Type |
Name |
Description |
User |
user |
|
ShouldShowSkills(User)
Declaration
public static bool ShouldShowSkills(User user)
Parameters
Type |
Name |
Description |
User |
user |
|
Returns
Type |
Description |
System.Boolean |
|
ToString()
Declaration
public override string ToString()
Returns
Type |
Description |
System.String |
|
Overrides
UILinkContent(Int32)
Declaration
public LocString UILinkContent(int count)
Parameters
Type |
Name |
Description |
System.Int32 |
count |
|
Returns
Unlearn(User, Single, Boolean, Boolean)
Declaration
public Task<Result> Unlearn(User user, float percentageOfXp, bool isSelf = false, bool force = false)
Parameters
Type |
Name |
Description |
User |
user |
|
System.Single |
percentageOfXp |
|
System.Boolean |
isSelf |
|
System.Boolean |
force |
|
Returns
Type |
Description |
System.Threading.Tasks.Task<Result> |
|
Events
PropertyChanged
Declaration
public event PropertyChangedEventHandler PropertyChanged
Event Type
Type |
Description |
System.ComponentModel.PropertyChangedEventHandler |
|
Implements
System.ComponentModel.INotifyPropertyChanged
Extension Methods