styyx-util 1.0
Utility Header for SKSE Plugin development
Loading...
Searching...
No Matches
StyyxUtil::PerkUtil Struct Reference

#include <st-perks.h>

Static Public Member Functions

static void TraversePerkNode (RE::BGSSkillPerkTreeNode *node, std::unordered_set< RE::BGSPerk * > &set_out, std::unordered_set< RE::BGSSkillPerkTreeNode * > &visited)
 recursively look through the perk tree nodes in an AVIF
static std::unordered_set< RE::BGSPerk * > GetPerksForSkill (RE::ActorValue av)
 Gets an unordered_set of all the perks from a given skill
early return if skill is not part of StyyxUtil::PerkUtil::kPlayableSkills.
static std::unordered_set< RE::BGSPerk * > GetAllPlayablePerks ()
static std::unordered_set< RE::BGSPerk * > GetAllMagicPerks ()
 Gets all perks belonging to magic skills (Alteration, Conjuration, Destruction, Illusion, Enchanting, Restoration).
static std::unordered_set< RE::BGSPerk * > GetAllThiefPerks ()
 Gets all perks belonging to thief skills (Pickpocket, Lockpicking, Light Armor, Alchemy, Speech, Sneak).
static std::unordered_set< RE::BGSPerk * > GetAllWarriorPerks ()
 Gets all perks belonging to warrior skills (One-Handed, Two-Handed, Archery, Block, Smithing, Heavy Armor).

Static Public Attributes

static constexpr std::array< RE::ActorValue, 18 > kPlayableSkills
 array of all skill relevant for the stats menu. Does not take any custom skill or the likes into account

Static Private Member Functions

static std::unordered_set< RE::BGSPerk * > GetPerksForSkills (std::span< const RE::ActorValue > skills)

Static Private Attributes

static constexpr std::array< RE::ActorValue, 6 > kWarriorSkills
static constexpr std::array< RE::ActorValue, 6 > kThiefSkills
static constexpr std::array< RE::ActorValue, 6 > kMageSkills

Member Function Documentation

◆ GetAllMagicPerks()

std::unordered_set< RE::BGSPerk * > StyyxUtil::PerkUtil::GetAllMagicPerks ( )
inlinestatic

Gets all perks belonging to magic skills (Alteration, Conjuration, Destruction, Illusion, Enchanting, Restoration).

Returns
unordered_set of all magic skill perks
Here is the call graph for this function:

◆ GetAllPlayablePerks()

std::unordered_set< RE::BGSPerk * > StyyxUtil::PerkUtil::GetAllPlayablePerks ( )
inlinestatic
Returns
std::unordered_set of all playable Perks
Here is the call graph for this function:

◆ GetAllThiefPerks()

std::unordered_set< RE::BGSPerk * > StyyxUtil::PerkUtil::GetAllThiefPerks ( )
inlinestatic

Gets all perks belonging to thief skills (Pickpocket, Lockpicking, Light Armor, Alchemy, Speech, Sneak).

Returns
unordered_set of all thief skill perks
Here is the call graph for this function:

◆ GetAllWarriorPerks()

std::unordered_set< RE::BGSPerk * > StyyxUtil::PerkUtil::GetAllWarriorPerks ( )
inlinestatic

Gets all perks belonging to warrior skills (One-Handed, Two-Handed, Archery, Block, Smithing, Heavy Armor).

Returns
unordered set of all warrior skill perks
Here is the call graph for this function:

◆ GetPerksForSkill()

std::unordered_set< RE::BGSPerk * > StyyxUtil::PerkUtil::GetPerksForSkill ( RE::ActorValue av)
inlinestatic

Gets an unordered_set of all the perks from a given skill
early return if skill is not part of StyyxUtil::PerkUtil::kPlayableSkills.

Parameters
avthe skill to get perks to.
Returns
unordered set with all perks of a specific skill
Here is the call graph for this function:

◆ GetPerksForSkills()

std::unordered_set< RE::BGSPerk * > StyyxUtil::PerkUtil::GetPerksForSkills ( std::span< const RE::ActorValue > skills)
inlinestaticprivate
Here is the call graph for this function:
Here is the caller graph for this function:

◆ TraversePerkNode()

void StyyxUtil::PerkUtil::TraversePerkNode ( RE::BGSSkillPerkTreeNode * node,
std::unordered_set< RE::BGSPerk * > & set_out,
std::unordered_set< RE::BGSSkillPerkTreeNode * > & visited )
inlinestatic

recursively look through the perk tree nodes in an AVIF

Parameters
nodethe perk tree node you want to start with
set_outunordered set reference to write the perks to
visitedunordered set to add the visited nodes to
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ kMageSkills

std::array<RE::ActorValue, 6> StyyxUtil::PerkUtil::kMageSkills
staticconstexprprivate
Initial value:
= {
RE::ActorValue::kAlteration, RE::ActorValue::kConjuration,
RE::ActorValue::kDestruction, RE::ActorValue::kIllusion,
RE::ActorValue::kEnchanting, RE::ActorValue::kRestoration
}

◆ kPlayableSkills

std::array<RE::ActorValue, 18> StyyxUtil::PerkUtil::kPlayableSkills
staticconstexpr
Initial value:
= {
RE::ActorValue::kOneHanded, RE::ActorValue::kTwoHanded,
RE::ActorValue::kArchery, RE::ActorValue::kBlock,
RE::ActorValue::kSmithing, RE::ActorValue::kHeavyArmor,
RE::ActorValue::kLightArmor, RE::ActorValue::kPickpocket,
RE::ActorValue::kLockpicking, RE::ActorValue::kSneak,
RE::ActorValue::kAlchemy, RE::ActorValue::kSpeech,
RE::ActorValue::kAlteration, RE::ActorValue::kConjuration,
RE::ActorValue::kDestruction, RE::ActorValue::kIllusion,
RE::ActorValue::kRestoration, RE::ActorValue::kEnchanting
}

array of all skill relevant for the stats menu. Does not take any custom skill or the likes into account

◆ kThiefSkills

std::array<RE::ActorValue, 6> StyyxUtil::PerkUtil::kThiefSkills
staticconstexprprivate
Initial value:
= {
RE::ActorValue::kSpeech, RE::ActorValue::kAlchemy,
RE::ActorValue::kLockpicking, RE::ActorValue::kSneak,
RE::ActorValue::kPickpocket, RE::ActorValue::kLightArmor
}

◆ kWarriorSkills

std::array<RE::ActorValue, 6> StyyxUtil::PerkUtil::kWarriorSkills
staticconstexprprivate
Initial value:
= {
RE::ActorValue::kOneHanded, RE::ActorValue::kTwoHanded,
RE::ActorValue::kHeavyArmor, RE::ActorValue::kArchery,
RE::ActorValue::kSmithing, RE::ActorValue::kBlock
}

The documentation for this struct was generated from the following file: