fix: clear selection on close
This commit is contained in:
@@ -103,21 +103,23 @@ bool USkillTreeComponent::SelectSkill(FName SkillID)
|
||||
case ESkillNodeState::Locked:
|
||||
// For locked skills, we allow selection but validate prerequisites
|
||||
// This allows players to "plan" their build
|
||||
bool bWouldBeAvailable = true;
|
||||
for (const FName& PrereqID : SkillNode->NodeData.Prerequisites)
|
||||
{
|
||||
if (!IsSkillPurchased(PrereqID) && !IsSkillSelected(PrereqID))
|
||||
bool bWouldBeAvailable = true;
|
||||
for (const FName& PrereqID : SkillNode->NodeData.Prerequisites)
|
||||
{
|
||||
bWouldBeAvailable = false;
|
||||
break;
|
||||
if (!IsSkillPurchased(PrereqID) && !IsSkillSelected(PrereqID))
|
||||
{
|
||||
bWouldBeAvailable = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!bWouldBeAvailable)
|
||||
{
|
||||
ErrorMessage = FText::FromString(TEXT(
|
||||
"Prerequisites not selected. Select prerequisite skills first"));
|
||||
OnSelectionError.Broadcast(SkillID, ErrorMessage);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if (!bWouldBeAvailable)
|
||||
{
|
||||
ErrorMessage = FText::FromString(TEXT(
|
||||
"Prerequisites not selected. Select prerequisite skills first"));
|
||||
OnSelectionError.Broadcast(SkillID, ErrorMessage);
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user