我有一个PlayerControl.cpp
类派生自Pawn类
在这个类中,我有一个方法来获取Map
中的所有actorTSubclassOf<AEnemy> ClassToFind;
TArray<AActor*> FoundEnemies;
UGameplayStatics::GetAllActorsOfClass(GetWorld(), ClassToFind, FoundEnemies);
但是FoundEnemies数组总是空的,当我在BP中做同样的事情时,它可以工作。
谁能告诉我为什么这不能在c++中工作?或者如果我做错了,如何做正确?
我终于找到了自己问题的答案
我应该给变量"ClassToFind"赋一个值所以添加行classToFind = AEnemy::StaticClass();
修复了这个问题
TSubclassOf<AEnemy> classToFind;
classToFind = AEnemy::StaticClass();
TArray<AActor*> foundEnemies;
UGameplayStatics::GetAllActorsOfClass(GetWorld(), classToFind, foundEnemies);