編集条件付きのプロパティを作る方法
UPROPERTYのmeta="変数名"で編集が出来るかどうかを指定する
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Tokyo|Adachi", meta = (EditCondition = "Rice"))
bool Teishoku;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Tokyo|Adachi")
bool Rice;
RiceがチェックされているとTeishokuがチェックできるようになります
チェックしていないときは 変数の先頭に'!" を付けて UPROPERTYのmeta="!変数名"
複数条件の時は&&または||でつなぎます
Rice, Dishがチェックされいる時にTeishokuはエディットできない
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Japan|Tokyo", meta = (EditCondition = "!Rice&&!Dish"))
bool Teishoku;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Japan|Tokyo")
bool Rice;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Japan|Tokyo")
bool Dish;
自動チェックはブループリントではコンストラクションスクリプトを利用しますが、C++ではOnConstruction関数をオーバーライドします
virtual void OnConstruction(const FTransform& Transform ) override;
void AMyActor::OnConstruction(const FTransform& Transform )
{
if (Rice || Dish)
Teishoku = true;
}