void PlayerSkills::SetSkillLegendaryLevel(BSFixedString actorValue, UInt32 level) { if(data) { UInt32 avId = LookupActorValueByName(actorValue.data); SInt32 skillId = ResolveAdvanceableSkillId(avId); if(skillId != -1) data->legendaryLevel[skillId] = level; } }
void PlayerSkills::SetSkillPoints(BSFixedString actorValue, float points) { if(data) { UInt32 avId = LookupActorValueByName(actorValue.data); SInt32 skillId = ResolveAdvanceableSkillId(avId); if(skillId != -1) data->levelData[skillId].points = points; } }
ActorValueInfo * GetActorValueInfoByName(StaticFunctionTag * base, BSFixedString avName) { UInt32 actorValue = LookupActorValueByName(avName.data); ActorValueList * avList = ActorValueList::GetSingleton(); if(!avList) return NULL; return avList->GetActorValue(actorValue); }
float GetMaximumValue(ActorValueInfo * info, Actor * actor) { if(info && actor) { UInt32 actorValue = LookupActorValueByName(info->name); if(actorValue < ActorValueList::kNumActorValues) { return actor->actorValueOwner.GetMaximum(actorValue); } } return 0.0; }
void AddSkillExperience(ActorValueInfo * info, float points) { if(info) { UInt32 actorValue = LookupActorValueByName(info->name); if(actorValue < ActorValueList::kNumActorValues) { PlayerCharacter* pPC = (*g_thePlayer); pPC->AdvanceSkill(actorValue, points, 0, 0); } } }
float PlayerSkills::GetSkillPoints(BSFixedString actorValue) { if(data) { UInt32 avId = LookupActorValueByName(actorValue.data); SInt32 skillId = ResolveAdvanceableSkillId(avId); if(skillId != -1) return data->levelData[skillId].points; } return 0.0; }
SInt32 PlayerSkills::GetSkillLegendaryLevel(BSFixedString actorValue) { if(data) { UInt32 avId = LookupActorValueByName(actorValue.data); SInt32 skillId = ResolveAdvanceableSkillId(avId); if(skillId != -1) return data->legendaryLevel[skillId]; } return -1; }