1206 lines
32 KiB
Lua
1206 lines
32 KiB
Lua
local SharedTraits =
|
|
{
|
|
Name = "SharedTraits",
|
|
Type = "System",
|
|
Namespace = "C_Traits",
|
|
Environment = "All",
|
|
|
|
Functions =
|
|
{
|
|
{
|
|
Name = "CanEditConfig",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
Documentation = { "Returns whether the player can make changes to the specified talent config." },
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "canEdit", Type = "bool", Nilable = false },
|
|
{ Name = "errorMessage", Type = "cstring", Nilable = false, Documentation = { "If canEdit is false, this will be filled out with text explaining why the player can not make changes." } },
|
|
},
|
|
},
|
|
{
|
|
Name = "CanPurchaseRank",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
{ Name = "nodeEntryID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "canPurchase", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "CanRefundRank",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "canRefund", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "CascadeRepurchaseRanks",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
{ Name = "entryID", Type = "number", Nilable = true },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "ClearCascadeRepurchaseHistory",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "CloseTraitSystemInteraction",
|
|
Type = "Function",
|
|
},
|
|
{
|
|
Name = "CommitConfig",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "ConfigHasStagedChanges",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "hasChanges", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GenerateImportString",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "importString", Type = "string", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GenerateInspectImportString",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "target", Type = "cstring", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "importString", Type = "string", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetConditionInfo",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "condID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "condInfo", Type = "TraitCondInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetConfigIDBySystemID",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "systemID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetConfigIDByTreeID",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetConfigInfo",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "configInfo", Type = "TraitConfigInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetConfigVariationID",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "systemID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "variationID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetConfigsByType",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configType", Type = "TraitConfigType", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "configIDs", Type = "table", InnerType = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetDefinitionInfo",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "definitionID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "definitionInfo", Type = "TraitDefinitionInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetEntryInfo",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "entryID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "entryInfo", Type = "TraitEntryInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetGroupCurrencyInfo",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "groupIDs", Type = "table", InnerType = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "groupCurrencyInfos", Type = "table", InnerType = "GroupCurrencyInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetGroupDisplayInfoByTreeID",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "displayInfos", Type = "table", InnerType = "TraitGroupDisplayInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetIncreasedTraitData",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
{ Name = "entryID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "itemName", Type = "table", InnerType = "IncreasedTraitData", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetLoadoutSerializationVersion",
|
|
Type = "Function",
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "serializationVersion", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetMaxAvailableTraitCurrency",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "traitCurrencyID", Type = "number", Nilable = false },
|
|
{ Name = "limitBySourcedMax", Type = "bool", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "maxAvailable", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetNodeCost",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "costs", Type = "table", InnerType = "TraitCurrencyCost", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetNodeInfo",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "nodeInfo", Type = "TraitNodeInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetStagedChanges",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
Documentation = { "Returns IDs of Trait Nodes with pending changes, grouped by the type of change; Returns nothing if there are no pending changes" },
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "nodeIDsWithPurchases", Type = "table", InnerType = "number", Nilable = false },
|
|
{ Name = "nodeIDsWithRefunds", Type = "table", InnerType = "number", Nilable = false },
|
|
{ Name = "nodeIDsWithSelectionSwaps", Type = "table", InnerType = "number", Nilable = false, Documentation = { "Selection nodes that had a previously committed selected entry, and now have a different selected entry pending" } },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetStagedChangesCost",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "costs", Type = "table", InnerType = "TraitCurrencyCost", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetSubTreeInfo",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "subTreeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "subTreeInfo", Type = "TraitSubTreeInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetSystemIDByTreeID",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "systemID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetTraitCurrencyForAchievement",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "traitCurrencyID", Type = "number", Nilable = false },
|
|
{ Name = "achievementID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "amount", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetTraitCurrencyInfo",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "traitCurrencyID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "flags", Type = "number", Nilable = false },
|
|
{ Name = "type", Type = "number", Nilable = false },
|
|
{ Name = "currencyTypesID", Type = "number", Nilable = true },
|
|
{ Name = "icon", Type = "number", Nilable = true },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetTraitDescription",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "entryID", Type = "number", Nilable = false },
|
|
{ Name = "rank", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "description", Type = "string", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetTraitSystemFlags",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "flags", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetTraitSystemWidgetSetID",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "uiWidgetSetID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetTreeCurrencyInfo",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
{ Name = "excludeStagedChanges", Type = "bool", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "treeCurrencyInfo", Type = "table", InnerType = "TreeCurrencyInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetTreeHash",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "result", Type = "table", InnerType = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetTreeInfo",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "treeInfo", Type = "TraitTreeInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "GetTreeNodes",
|
|
Type = "Function",
|
|
MayReturnNothing = true,
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
Documentation = { "Returns a list of nodeIDs, sorted ascending, for a given treeID. Contains nodes for all class specializations." },
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "nodeIDs", Type = "table", InnerType = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "HasValidInspectData",
|
|
Type = "Function",
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "hasValidInspectData", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "IsReadyForCommit",
|
|
Type = "Function",
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "isReadyForCommit", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "PurchaseAllRanks",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
{ Name = "ignoreCost", Type = "bool", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "PurchaseRank",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "RefundAllRanks",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "RefundRank",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
{ Name = "clearEdges", Type = "bool", Nilable = true },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "ResetTree",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "ResetTreeByCurrency",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
{ Name = "traitCurrencyID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "RollbackConfig",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "SetSelection",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
{ Name = "nodeEntryID", Type = "number", Nilable = true },
|
|
{ Name = "clearEdges", Type = "bool", Nilable = true },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "StageConfig",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TalentTestUnlearnSpells",
|
|
Type = "Function",
|
|
},
|
|
{
|
|
Name = "TryPurchaseAllRanks",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TryPurchaseToNode",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TryRefundToNode",
|
|
Type = "Function",
|
|
SecretArguments = "AllowedWhenUntainted",
|
|
|
|
Arguments =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
{ Name = "entryID", Type = "number", Nilable = false },
|
|
},
|
|
|
|
Returns =
|
|
{
|
|
{ Name = "success", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
},
|
|
|
|
Events =
|
|
{
|
|
{
|
|
Name = "ConfigCommitFailed",
|
|
Type = "Event",
|
|
LiteralName = "CONFIG_COMMIT_FAILED",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitCondInfoChanged",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_COND_INFO_CHANGED",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "condID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitConfigCreated",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_CONFIG_CREATED",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "configInfo", Type = "TraitConfigInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitConfigDeleted",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_CONFIG_DELETED",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitConfigListUpdated",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_CONFIG_LIST_UPDATED",
|
|
SynchronousEvent = true,
|
|
},
|
|
{
|
|
Name = "TraitConfigUpdated",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_CONFIG_UPDATED",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "configID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitNodeChanged",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_NODE_CHANGED",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "nodeID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitNodeChangedPartial",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_NODE_CHANGED_PARTIAL",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "ID", Type = "number", Nilable = false },
|
|
{ Name = "info", Type = "TraitNodeInfoPartial", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitNodeEntryUpdated",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_NODE_ENTRY_UPDATED",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "nodeEntryID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitSubTreeChanged",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_SUB_TREE_CHANGED",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "subTreeID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitSystemInteractionStarted",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_SYSTEM_INTERACTION_STARTED",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitSystemNpcClosed",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_SYSTEM_NPC_CLOSED",
|
|
SynchronousEvent = true,
|
|
},
|
|
{
|
|
Name = "TraitTreeChanged",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_TREE_CHANGED",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitTreeCurrencyInfoUpdated",
|
|
Type = "Event",
|
|
LiteralName = "TRAIT_TREE_CURRENCY_INFO_UPDATED",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TryPurchaseToNodePartialSuccess",
|
|
Type = "Event",
|
|
LiteralName = "TRY_PURCHASE_TO_NODE_PARTIAL_SUCCESS",
|
|
SynchronousEvent = true,
|
|
Payload =
|
|
{
|
|
{ Name = "nodeFinishedOn", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
},
|
|
|
|
Tables =
|
|
{
|
|
{
|
|
Name = "GroupCurrencyInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "traitNodeGroupID", Type = "number", Nilable = false },
|
|
{ Name = "currencyInfos", Type = "table", InnerType = "TreeCurrencyInfo", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "IncreasedTraitData",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "itemNameIncreasing", Type = "string", Nilable = false },
|
|
{ Name = "itemQualityIncreasing", Type = "ItemQuality", Nilable = false },
|
|
{ Name = "numPointsIncreased", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitCondInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "condID", Type = "number", Nilable = false },
|
|
{ Name = "ranksGranted", Type = "number", Nilable = true },
|
|
{ Name = "isAlwaysMet", Type = "bool", Nilable = false },
|
|
{ Name = "isMet", Type = "bool", Nilable = false, Documentation = { "True if the source for the condition has been fulfilled." } },
|
|
{ Name = "isGate", Type = "bool", Nilable = false },
|
|
{ Name = "isSufficient", Type = "bool", Nilable = false, Documentation = { "True if meeting the requirements for the condition means any nodes using this condition are considered fulfilled if the condition is met." } },
|
|
{ Name = "type", Type = "number", Nilable = false, Documentation = { "The value from the TraitConditionType enum the condition uses." } },
|
|
{ Name = "questID", Type = "number", Nilable = true },
|
|
{ Name = "achievementID", Type = "number", Nilable = true },
|
|
{ Name = "specSetID", Type = "number", Nilable = true },
|
|
{ Name = "playerLevel", Type = "number", Nilable = true },
|
|
{ Name = "traitCurrencyID", Type = "number", Nilable = true },
|
|
{ Name = "spentAmountRequired", Type = "number", Nilable = true },
|
|
{ Name = "tooltipFormat", Type = "string", Nilable = true },
|
|
{ Name = "traitCondAccountElementID", Type = "number", Nilable = true },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitConfigInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "ID", Type = "number", Nilable = false },
|
|
{ Name = "type", Type = "TraitConfigType", Nilable = false },
|
|
{ Name = "name", Type = "string", Nilable = false },
|
|
{ Name = "treeIDs", Type = "table", InnerType = "number", Nilable = false },
|
|
{ Name = "usesSharedActionBars", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitCurrencyCost",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "ID", Type = "number", Nilable = false },
|
|
{ Name = "amount", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitDefinitionInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "spellID", Type = "number", Nilable = true },
|
|
{ Name = "overrideName", Type = "string", Nilable = true },
|
|
{ Name = "overrideSubtext", Type = "string", Nilable = true },
|
|
{ Name = "overrideDescription", Type = "string", Nilable = true },
|
|
{ Name = "overrideIcon", Type = "number", Nilable = true },
|
|
{ Name = "overriddenSpellID", Type = "number", Nilable = true },
|
|
{ Name = "subType", Type = "TraitDefinitionSubType", Nilable = true },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitEntryInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "definitionID", Type = "number", Nilable = true, Documentation = { "Nil on SubTreeSelection Node Entries" } },
|
|
{ Name = "subTreeID", Type = "number", Nilable = true, Documentation = { "Populated only on SubTreeSelection Node Entries; This is the SubTree that is activated if this Entry is chosen" } },
|
|
{ Name = "type", Type = "TraitNodeEntryType", Nilable = false },
|
|
{ Name = "maxRanks", Type = "number", Nilable = false },
|
|
{ Name = "isAvailable", Type = "bool", Nilable = false },
|
|
{ Name = "isDisplayError", Type = "bool", Nilable = false, Documentation = { "True if this entry fails the TRAIT_CONDITION_TYPE_DISPLAY_ERROR condition check. Used to communicate a problem with the node to the player (e.g. A prerequisite node has not been purchased.) but will not prevent the player from spending points on the node." } },
|
|
{ Name = "conditionIDs", Type = "table", InnerType = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitEntryRankInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "entryID", Type = "number", Nilable = false },
|
|
{ Name = "rank", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitGateInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "topLeftNodeID", Type = "number", Nilable = false },
|
|
{ Name = "conditionID", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitGroupDisplayInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "groupID", Type = "number", Nilable = false },
|
|
{ Name = "treeID", Type = "number", Nilable = false },
|
|
{ Name = "skillLineID", Type = "number", Nilable = false },
|
|
{ Name = "orderIndex", Type = "number", Nilable = false },
|
|
{ Name = "displayName", Type = "cstring", Nilable = false },
|
|
{ Name = "icon", Type = "number", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitNodeInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "ID", Type = "number", Nilable = false },
|
|
{ Name = "posX", Type = "number", Nilable = false },
|
|
{ Name = "posY", Type = "number", Nilable = false },
|
|
{ Name = "flags", Type = "number", Nilable = false },
|
|
{ Name = "entryIDs", Type = "table", InnerType = "number", Nilable = false },
|
|
{ Name = "entryIDsWithCommittedRanks", Type = "table", InnerType = "number", Nilable = false },
|
|
{ Name = "canPurchaseRank", Type = "bool", Nilable = false },
|
|
{ Name = "canRefundRank", Type = "bool", Nilable = false },
|
|
{ Name = "isAvailable", Type = "bool", Nilable = false },
|
|
{ Name = "isVisible", Type = "bool", Nilable = false },
|
|
{ Name = "isDisplayError", Type = "bool", Nilable = false, Documentation = { "True if this node fails the TRAIT_CONDITION_TYPE_DISPLAY_ERROR condition check. Used to communicate a problem with the node to the player (e.g. A prerequisite node has not been purchased.) but will not prevent the player from spending points on the node." } },
|
|
{ Name = "ranksPurchased", Type = "number", Nilable = false },
|
|
{ Name = "ranksIncreased", Type = "number", Nilable = false },
|
|
{ Name = "entryIDToRanksIncreased", Type = "LuaValueVariant", Nilable = false, Documentation = { "A map of the entry IDs on this node to the number of ranks increased. This covers all entries on the node, which is important in the case of selection nodes where we have more than one option that could be increased." } },
|
|
{ Name = "activeRank", Type = "number", Nilable = false },
|
|
{ Name = "currentRank", Type = "number", Nilable = false },
|
|
{ Name = "activeEntry", Type = "TraitEntryRankInfo", Nilable = true },
|
|
{ Name = "nextEntry", Type = "TraitEntryRankInfo", Nilable = true },
|
|
{ Name = "maxRanks", Type = "number", Nilable = false },
|
|
{ Name = "totalMaxRanks", Type = "number", Nilable = false },
|
|
{ Name = "type", Type = "TraitNodeType", Nilable = false },
|
|
{ Name = "visibleEdges", Type = "table", InnerType = "TraitOutEdgeInfo", Nilable = false },
|
|
{ Name = "meetsEdgeRequirements", Type = "bool", Nilable = false },
|
|
{ Name = "groupIDs", Type = "table", InnerType = "number", Nilable = false },
|
|
{ Name = "conditionIDs", Type = "table", InnerType = "number", Nilable = false },
|
|
{ Name = "isCascadeRepurchasable", Type = "bool", Nilable = false },
|
|
{ Name = "cascadeRepurchaseEntryID", Type = "number", Nilable = true },
|
|
{ Name = "subTreeID", Type = "number", Nilable = true, Documentation = { "The SubTree this Node belongs to; Nil if it is not part of a SubTree" } },
|
|
{ Name = "subTreeActive", Type = "bool", Nilable = true, Documentation = { "True if this node has a SubTreeID, and the SubTree is chosen or staged; May be nil if not part of a SubTree at all" } },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitNodeInfoPartial",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "canPurchaseRank", Type = "bool", Nilable = true },
|
|
{ Name = "canRefundRank", Type = "bool", Nilable = true },
|
|
{ Name = "isAvailable", Type = "bool", Nilable = true },
|
|
{ Name = "isVisible", Type = "bool", Nilable = true },
|
|
{ Name = "ranksPurchased", Type = "number", Nilable = true },
|
|
{ Name = "activeRank", Type = "number", Nilable = true },
|
|
{ Name = "currentRank", Type = "number", Nilable = true },
|
|
{ Name = "meetsEdgeRequirements", Type = "bool", Nilable = true },
|
|
{ Name = "isCascadeRepurchasable", Type = "bool", Nilable = true },
|
|
{ Name = "activeEntryID", Type = "number", Nilable = true },
|
|
{ Name = "subTreeActive", Type = "bool", Nilable = true },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitOutEdgeInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "targetNode", Type = "number", Nilable = false },
|
|
{ Name = "type", Type = "number", Nilable = false },
|
|
{ Name = "visualStyle", Type = "number", Nilable = false },
|
|
{ Name = "isActive", Type = "bool", Nilable = false },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitSubTreeInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "ID", Type = "number", Nilable = false },
|
|
{ Name = "name", Type = "string", Nilable = true },
|
|
{ Name = "description", Type = "string", Nilable = true },
|
|
{ Name = "iconElementID", Type = "textureAtlas", Nilable = true },
|
|
{ Name = "traitCurrencyID", Type = "number", Nilable = true },
|
|
{ Name = "isActive", Type = "bool", Nilable = false },
|
|
{ Name = "subTreeSelectionNodeIDs", Type = "table", InnerType = "number", Nilable = false, Documentation = { "SubTreeSelectionNodes whose choice entries include this SubTree" } },
|
|
{ Name = "posX", Type = "number", Nilable = false, Documentation = { "Center X node position calculated from the posX values of all of this subTree's nodes" } },
|
|
{ Name = "posY", Type = "number", Nilable = false, Documentation = { "Topmost Y node position taken from the posY values of all of this subTree's nodes" } },
|
|
},
|
|
},
|
|
{
|
|
Name = "TraitTreeInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "ID", Type = "number", Nilable = false },
|
|
{ Name = "gates", Type = "table", InnerType = "TraitGateInfo", Nilable = false },
|
|
{ Name = "hideSingleRankNumbers", Type = "bool", Nilable = false },
|
|
{ Name = "cannotRefund", Type = "bool", Nilable = false },
|
|
{ Name = "rootNodeID", Type = "number", Nilable = true },
|
|
{ Name = "uiTextureKit", Type = "textureKit", Nilable = false },
|
|
{ Name = "titleText", Type = "string", Nilable = true },
|
|
},
|
|
},
|
|
{
|
|
Name = "TreeCurrencyInfo",
|
|
Type = "Structure",
|
|
Fields =
|
|
{
|
|
{ Name = "traitCurrencyID", Type = "number", Nilable = false },
|
|
{ Name = "quantity", Type = "number", Nilable = false },
|
|
{ Name = "maxQuantity", Type = "number", Nilable = true },
|
|
{ Name = "spent", Type = "number", Nilable = false },
|
|
{ Name = "spentInTree", Type = "number", Nilable = true },
|
|
},
|
|
},
|
|
},
|
|
|
|
Predicates =
|
|
{
|
|
},
|
|
};
|
|
|
|
APIDocumentation:AddDocumentationTable(SharedTraits); |