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