AAIController::OnGameplayTaskResourcesClaimed
#include "AIController.h"
Access: public
Specifiers: virtualUFUNCTIONAIMODULE_API
Description
Called by the GameplayTasks component whenever resource ownership changes on this controller. Override to react to tasks locking or releasing named AI resources such as movement or logic.
Caveats & Gotchas
- • `FGameplayResourceSet` is a bitmask over up to 16 named resources registered with `UGameplayTaskResource`. You must register your resource types before the first task runs, typically in `PostInitializeComponents`.
- • This method is bound via `UFUNCTION()` for internal delegate use — it is not Blueprint-callable despite having the macro. The UHT-generated code requires the `GameplayTasks` module in your build dependencies.
Signature
AIMODULE_API virtual void OnGameplayTaskResourcesClaimed(FGameplayResourceSet NewlyClaimed, FGameplayResourceSet FreshlyReleased); Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| NewlyClaimed | FGameplayResourceSet | Bitmask of resource IDs that were just locked by an activating task. | — |
| FreshlyReleased | FGameplayResourceSet | Bitmask of resource IDs that were just freed by a deactivating task. | — |
Return Type
void Example
Log resource changes for AI debugging C++
void AMyAIController::OnGameplayTaskResourcesClaimed(FGameplayResourceSet NewlyClaimed, FGameplayResourceSet FreshlyReleased)
{
Super::OnGameplayTaskResourcesClaimed(NewlyClaimed, FreshlyReleased);
if (NewlyClaimed.HasID(UMyMovementResource::GetResourceID()))
{
// A task just locked movement — stop any pending move requests
StopMovement();
}
} Tags
Version History
Introduced in: 4.12
| Version | Status | Notes |
|---|---|---|
| 5.6 | stable | — |
Feedback
Was this helpful?