Core/Players: Implemented new talent system

Port From (https://github.com/TrinityCore/TrinityCore/commit/0cc5ab8372f19dad7412038d52dcd39db5e0e171)
This commit is contained in:
hondacrx
2023-01-04 02:50:40 -05:00
parent 0bfc448595
commit 55da7dc549
24 changed files with 3168 additions and 532 deletions
+1 -1
View File
@@ -292,7 +292,7 @@ namespace Game.DataStorage
public sealed class ChrSpecializationRecord
{
public string Name;
public LocalizedString Name;
public string FemaleName;
public string Description;
public uint Id;
@@ -124,6 +124,14 @@ namespace Game.DataStorage
public ushort SkillupSkillLineID;
}
public sealed class SkillLineXTraitTreeRecord
{
public uint Id;
public int SkillLineID;
public int TraitTreeID;
public int OrderIndex;
}
public sealed class SkillRaceClassInfoRecord
{
public uint Id;
+217 -2
View File
@@ -103,6 +103,222 @@ namespace Game.DataStorage
public int RequiredTransmogHoliday;
}
public sealed class TraitCondRecord
{
public uint Id;
public int CondType;
public int TraitTreeID;
public int GrantedRanks;
public uint QuestID;
public uint AchievementID;
public int SpecSetID;
public int TraitNodeGroupID;
public int TraitNodeID;
public int TraitCurrencyID;
public int SpentAmountRequired;
public int Flags;
public int RequiredLevel;
public int FreeSharedStringID;
public int SpendMoreSharedStringID;
public TraitConditionType GetCondType() { return (TraitConditionType)CondType; }
}
public sealed class TraitCostRecord
{
public string InternalName;
public uint Id;
public int Amount;
public int TraitCurrencyID;
}
public sealed class TraitCurrencyRecord
{
public uint Id;
public int Type;
public int CurrencyTypesID;
public int Flags;
public int Icon;
public TraitCurrencyType GetCurrencyType() { return (TraitCurrencyType)Type; }
}
public sealed class TraitCurrencySourceRecord
{
public LocalizedString Requirement;
public uint Id;
public int TraitCurrencyID;
public int Amount;
public uint QuestID;
public uint AchievementID;
public uint PlayerLevel;
public int TraitNodeEntryID;
public int OrderIndex;
}
public sealed class TraitDefinitionRecord
{
public LocalizedString OverrideName;
public LocalizedString OverrideSubtext;
public LocalizedString OverrideDescription;
public uint Id;
public uint SpellID;
public int OverrideIcon;
public uint OverridesSpellID;
public uint VisibleSpellID;
}
public sealed class TraitDefinitionEffectPointsRecord
{
public uint Id;
public int TraitDefinitionID;
public int EffectIndex;
public int OperationType;
public int CurveID;
public TraitPointsOperationType GetOperationType() { return (TraitPointsOperationType)OperationType; }
}
public sealed class TraitEdgeRecord
{
public uint Id;
public int VisualStyle;
public int LeftTraitNodeID;
public int RightTraitNodeID;
public int Type;
}
public sealed class TraitNodeRecord
{
public uint Id;
public int TraitTreeID;
public int PosX;
public int PosY;
public sbyte Type;
public int Flags;
public TraitNodeType GetNodeType() { return (TraitNodeType)Type; }
}
public sealed class TraitNodeEntryRecord
{
public uint Id;
public int TraitDefinitionID;
public int MaxRanks;
public byte NodeRecordType;
}
public sealed class TraitNodeEntryXTraitCondRecord
{
public uint Id;
public int TraitCondID;
public uint TraitNodeEntryID;
}
public sealed class TraitNodeEntryXTraitCostRecord
{
public uint Id;
public int TraitNodeEntryID;
public int TraitCostID;
}
public sealed class TraitNodeGroupRecord
{
public uint Id;
public int TraitTreeID;
public int Flags;
}
public sealed class TraitNodeGroupXTraitCondRecord
{
public uint Id;
public int TraitCondID;
public int TraitNodeGroupID;
}
public sealed class TraitNodeGroupXTraitCostRecord
{
public uint Id;
public int TraitNodeGroupID;
public int TraitCostID;
}
public sealed class TraitNodeGroupXTraitNodeRecord
{
public uint Id;
public int TraitNodeGroupID;
public int TraitNodeID;
public int Index;
}
public sealed class TraitNodeXTraitCondRecord
{
public uint Id;
public int TraitCondID;
public int TraitNodeID;
}
public sealed class TraitNodeXTraitCostRecord
{
public uint Id;
public uint TraitNodeID;
public int TraitCostID;
}
public sealed class TraitNodeXTraitNodeEntryRecord
{
public uint Id;
public int TraitNodeID;
public int TraitNodeEntryID;
public int Index;
}
public sealed class TraitTreeRecord
{
public uint Id;
public int TraitSystemID;
public int Unused1000_1;
public int FirstTraitNodeID;
public int PlayerConditionID;
public int Flags;
public float Unused1000_2;
public float Unused1000_3;
public TraitTreeFlag GetFlags() { return (TraitTreeFlag)Flags; }
}
public sealed class TraitTreeLoadoutRecord
{
public uint Id;
public int TraitTreeID;
public int ChrSpecializationID;
}
public sealed class TraitTreeLoadoutEntryRecord
{
public uint Id;
public int TraitTreeLoadoutID;
public int SelectedTraitNodeID;
public int SelectedTraitNodeEntryID;
public int NumPoints;
public int OrderIndex;
}
public sealed class TraitTreeXTraitCostRecord
{
public uint Id;
public uint TraitTreeID;
public int TraitCostID;
}
public sealed class TraitTreeXTraitCurrencyRecord
{
public uint Id;
public int Index;
public int TraitTreeID;
public int TraitCurrencyID;
}
public sealed class TransmogIllusionRecord
{
public uint Id;
@@ -161,5 +377,4 @@ namespace Game.DataStorage
public uint TimeIndex;
public uint GameObjectsID;
}
}
}