Space Plunder
Loading...
Searching...
No Matches
FCharacterBaseSkills Struct Reference

#include <BaseData.h>

Public Member Functions

int32 GetStrength () const
 
bool AddStrengthXP (const float Value)
 
int32 GetPerception () const
 
bool AddPerceptionXP (const float Value)
 
int32 GetEndurance () const
 
bool AddEnduranceXP (const float Value)
 
int32 GetCharisma () const
 
bool AddCharismaXP (const float Value)
 
int32 GetIntelligence () const
 
bool AddIntelligenceXP (const float Value)
 
int32 GetAgility () const
 
bool AddAgilityXP (const float Value)
 
int32 GetWeaponSkill () const
 
bool AddWeaponSkillXP (const float Value)
 
int32 GetStealth () const
 
bool AddStealthXP (const float Value)
 
int32 GetLuck () const
 
bool AddLuckXP (const float Value)
 
int32 GetSkillPoints () const
 
void AddSkillXP (const FGameplayTag &Name, const int32 Value)
 
void AddSkillLevel (const FGameplayTag &Name, const bool bIncrease)
 
void AddSkillLevelByName (const FString &Name, const bool bIncrease)
 
FCharacterSkillGetSkillByName (const FString &Name)
 
FCharacterSkillGetSkillByTag (const FGameplayTag &Name)
 
TArray< FCharacterSkillGetAllSkills () const
 
TArray< FCharacterSkill * > GetAllSkillsRef ()
 
int32 GetNumberOfSkills () const
 
 FCharacterBaseSkills ()
 

Public Attributes

FCharacterSkill Strength = FCharacterSkill(SkillTags::Strength, 1)
 
FCharacterSkill Perception = FCharacterSkill(SkillTags::Perception, 1)
 
FCharacterSkill Endurance = FCharacterSkill(SkillTags::Endurance, 1)
 
FCharacterSkill Charisma = FCharacterSkill(SkillTags::Charisma, 1)
 
FCharacterSkill Intelligence = FCharacterSkill(SkillTags::Intelligence, 1)
 
FCharacterSkill Agility = FCharacterSkill(SkillTags::Agility, 1)
 
FCharacterSkill WeaponSkill = FCharacterSkill(SkillTags::WeaponSkill, 1)
 
FCharacterSkill Stealth = FCharacterSkill(SkillTags::Stealth, 1)
 
FCharacterSkill Luck = FCharacterSkill(SkillTags::Luck, 1)
 

Protected Attributes

int32 SkillPoints = 10
 

Constructor & Destructor Documentation

◆ FCharacterBaseSkills()

FCharacterBaseSkills::FCharacterBaseSkills ( )
inline
986 {
987
988 }

Member Function Documentation

◆ AddAgilityXP()

bool FCharacterBaseSkills::AddAgilityXP ( const float Value)
inline
851{return Agility.AddXP(Value);};
FCharacterSkill Agility
Definition BaseData.h:849
bool AddXP(const float Value)
Definition BaseData.h:751

◆ AddCharismaXP()

bool FCharacterBaseSkills::AddCharismaXP ( const float Value)
inline
840{return Charisma.AddXP(Value);};
FCharacterSkill Charisma
Definition BaseData.h:838

◆ AddEnduranceXP()

bool FCharacterBaseSkills::AddEnduranceXP ( const float Value)
inline
834{return Endurance.AddXP(Value);};
FCharacterSkill Endurance
Definition BaseData.h:832

◆ AddIntelligenceXP()

bool FCharacterBaseSkills::AddIntelligenceXP ( const float Value)
inline
845{return Intelligence.AddXP(Value);};
FCharacterSkill Intelligence
Definition BaseData.h:843

◆ AddLuckXP()

bool FCharacterBaseSkills::AddLuckXP ( const float Value)
inline
867{return Luck.AddXP(Value);};
FCharacterSkill Luck
Definition BaseData.h:865

◆ AddPerceptionXP()

bool FCharacterBaseSkills::AddPerceptionXP ( const float Value)
inline
828{return Perception.AddXP(Value);};
FCharacterSkill Perception
Definition BaseData.h:826

◆ AddSkillLevel()

void FCharacterBaseSkills::AddSkillLevel ( const FGameplayTag & Name,
const bool bIncrease )
inline
885 {
886 for(const auto& Skill : GetAllSkillsRef())
887 {
888 if(Skill == nullptr){continue;}
889 if(Skill->Name == Name)
890 {
891 Skill->AddLevel(bIncrease);
892 }
893 }
894 }
TArray< FCharacterSkill * > GetAllSkillsRef()
Definition BaseData.h:964

◆ AddSkillLevelByName()

void FCharacterBaseSkills::AddSkillLevelByName ( const FString & Name,
const bool bIncrease )
inline
896 {
897 FCharacterSkill* Skill = GetSkillByName(Name);
898 if(Skill == nullptr){UE_LOG(LogBaseHelpers, Warning, TEXT("FCharacterBaseSkills::AddSkillLevelByName Skill: %s Not found.."), *Name);return;}
899 // Get All Skill Points,
900 // Check we Have enough to Add.
901 // If Not, Return
902 // If true Add Level
903 // Mofify SkillPoints.
904 if(bIncrease && GetSkillPoints() <= 0)
905 {
906 return;
907 }
908 const bool bChangedLevel = Skill->AddLevel(bIncrease);
909 if(bChangedLevel == false){return;}
910 if(bIncrease)
911 {
912 SkillPoints--;
913 }
914 else
915 {
916 SkillPoints++;
917 }
918 }
int32 GetSkillPoints() const
Definition BaseData.h:869
int32 SkillPoints
Definition BaseData.h:993
FCharacterSkill * GetSkillByName(const FString &Name)
Definition BaseData.h:920
The FCharacterSkill struct represents a skill of a character.
Definition BaseData.h:719
bool AddLevel(const bool bIncrease)
Definition BaseData.h:762

◆ AddSkillXP()

void FCharacterBaseSkills::AddSkillXP ( const FGameplayTag & Name,
const int32 Value )
inline
874 {
875 for(const auto& Skill : GetAllSkillsRef())
876 {
877 if(Skill == nullptr){continue;}
878 if(Skill->Name == Name)
879 {
880 Skill->AddXP(Value);
881 }
882 }
883 }

◆ AddStealthXP()

bool FCharacterBaseSkills::AddStealthXP ( const float Value)
inline
862{return Stealth.AddXP(Value);};
FCharacterSkill Stealth
Definition BaseData.h:860

◆ AddStrengthXP()

bool FCharacterBaseSkills::AddStrengthXP ( const float Value)
inline
822{return Strength.AddXP(Value);};
FCharacterSkill Strength
Definition BaseData.h:820

◆ AddWeaponSkillXP()

bool FCharacterBaseSkills::AddWeaponSkillXP ( const float Value)
inline
857{return WeaponSkill.AddXP(Value);};
FCharacterSkill WeaponSkill
Definition BaseData.h:855

◆ GetAgility()

int32 FCharacterBaseSkills::GetAgility ( ) const
inline
850{return Agility.Level;};
int32 Level
Definition BaseData.h:728

◆ GetAllSkills()

TArray< FCharacterSkill > FCharacterBaseSkills::GetAllSkills ( ) const
inline

Gets copy! use GetAllSkillsRef to Edit

951 {
952 TArray<FCharacterSkill> Skills;
953 Skills.Add(Strength);
954 Skills.Add(Perception);
955 Skills.Add(Endurance);
956 Skills.Add(Charisma);
957 Skills.Add(Intelligence);
958 Skills.Add(Agility);
959 Skills.Add(WeaponSkill);
960 Skills.Add(Stealth);
961 Skills.Add(Luck);
962 return Skills;
963 }

◆ GetAllSkillsRef()

TArray< FCharacterSkill * > FCharacterBaseSkills::GetAllSkillsRef ( )
inline
965 {
966 TArray<FCharacterSkill*> Skills;
967 Skills.Add(&Strength);
968 Skills.Add(&Perception);
969 Skills.Add(&Endurance);
970 Skills.Add(&Charisma);
971 Skills.Add(&Intelligence);
972 Skills.Add(&Agility);
973 Skills.Add(&WeaponSkill);
974 Skills.Add(&Stealth);
975 Skills.Add(&Luck);
976 return Skills;
977 }

◆ GetCharisma()

int32 FCharacterBaseSkills::GetCharisma ( ) const
inline
839{return Charisma.Level;};

◆ GetEndurance()

int32 FCharacterBaseSkills::GetEndurance ( ) const
inline
833{return Endurance.Level;};

◆ GetIntelligence()

int32 FCharacterBaseSkills::GetIntelligence ( ) const
inline
844{return Intelligence.Level;};

◆ GetLuck()

int32 FCharacterBaseSkills::GetLuck ( ) const
inline
866{return Luck.Level;};

◆ GetNumberOfSkills()

int32 FCharacterBaseSkills::GetNumberOfSkills ( ) const
inline
980 {
981 return GetAllSkills().Num();
982 }
TArray< FCharacterSkill > GetAllSkills() const
Definition BaseData.h:950

◆ GetPerception()

int32 FCharacterBaseSkills::GetPerception ( ) const
inline
827{return Perception.Level;};

◆ GetSkillByName()

FCharacterSkill * FCharacterBaseSkills::GetSkillByName ( const FString & Name)
inline
921 {
922 for(const auto& Skill : GetAllSkillsRef())
923 {
924 FString LastTagPart = "";
925 Skill->Name.GetTagName().ToString().Split(TEXT("."), nullptr, &LastTagPart, ESearchCase::IgnoreCase, ESearchDir::FromEnd);
926 if(Name == LastTagPart)
927 {
928 return Skill;
929 }
930 }
931 return nullptr;
932 }

◆ GetSkillByTag()

FCharacterSkill * FCharacterBaseSkills::GetSkillByTag ( const FGameplayTag & Name)
inline
934 {
935 for(const auto& Skill : GetAllSkillsRef())
936 {
937 if(Skill == nullptr){continue;}
938 if(Skill->Name == Name)
939 {
940 return Skill;
941 }
942 }
943 return nullptr;
944 }

◆ GetSkillPoints()

int32 FCharacterBaseSkills::GetSkillPoints ( ) const
inline
869{return SkillPoints;};

◆ GetStealth()

int32 FCharacterBaseSkills::GetStealth ( ) const
inline
861{return Stealth.Level;};

◆ GetStrength()

int32 FCharacterBaseSkills::GetStrength ( ) const
inline
821{return Strength.Level;};

◆ GetWeaponSkill()

int32 FCharacterBaseSkills::GetWeaponSkill ( ) const
inline
856{return WeaponSkill.Level;};

Member Data Documentation

◆ Agility

FCharacterSkill FCharacterBaseSkills::Agility = FCharacterSkill(SkillTags::Agility, 1)

◆ Charisma

FCharacterSkill FCharacterBaseSkills::Charisma = FCharacterSkill(SkillTags::Charisma, 1)

◆ Endurance

FCharacterSkill FCharacterBaseSkills::Endurance = FCharacterSkill(SkillTags::Endurance, 1)

◆ Intelligence

FCharacterSkill FCharacterBaseSkills::Intelligence = FCharacterSkill(SkillTags::Intelligence, 1)

◆ Luck

FCharacterSkill FCharacterBaseSkills::Luck = FCharacterSkill(SkillTags::Luck, 1)

◆ Perception

FCharacterSkill FCharacterBaseSkills::Perception = FCharacterSkill(SkillTags::Perception, 1)

◆ SkillPoints

int32 FCharacterBaseSkills::SkillPoints = 10
protected

◆ Stealth

FCharacterSkill FCharacterBaseSkills::Stealth = FCharacterSkill(SkillTags::Stealth, 1)

◆ Strength

FCharacterSkill FCharacterBaseSkills::Strength = FCharacterSkill(SkillTags::Strength, 1)

◆ WeaponSkill

FCharacterSkill FCharacterBaseSkills::WeaponSkill = FCharacterSkill(SkillTags::WeaponSkill, 1)

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