其实,就是C++提供get()和set()给蓝图使用,把蓝图的成员变量去掉,而在C++中添加相应成员变量.

bool IsAttacking = false;
 //===== 攻击状态接口 =====
UFUNCTION(BlueprintCallable, Category = "Combat")
void SetIsAttacking(bool bNewState);

UFUNCTION(BlueprintPure, Category = "Combat")
bool GetIsAttacking() const;
void AMyPaperZDCharacter::SetIsAttacking(bool bNewState)

{
//可选:避免重复赋值
if (IsAttacking == bNewState)
return;
IsAttacking = bNewState;
}

bool AMyPaperZDCharacter::GetIsAttacking() const
{
return IsAttacking;
}
蓝图相应位置改为
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
蓝图中的成员变量不再使用,直接删掉
在这里插入图片描述

更多推荐