親BPから継承した変数を子BP同士で共有したい

エリア内でクリックするとそのアイテムの詳細がウィジェットに表示されるシステムを作っています。

ウィジェットの文字が重複表示されないように
アイテムAの説明文が流れている間に、アイテムBをクリックしてもメッセージが上から流れないようにするため

親BPに説明文の状態を確認するBoolean変数を設定し

子BPで変数を確認→Falseなら説明確認BooleanをTrueにしてからウィジェットに文章を送る→終わったら説明確認をFalseに戻す

子BP単体では正常に動作しますが、複数の子BPを作成した際に、子BP同士での変数設定が共有されておらず、別の子BPがウィジェットを再生中でも上書きできてしまいました。

どこの設定を変更すれば、子BP同士でBooleanの設定値が共有されますでしょうか。

Translation provided by Google Translate (I will be answering in English as that is my native language, but I will provide a Japanese translation for the original poster)

翻訳は Google Translate によって提供されます(英語が母国語なので英語で回答しますが、元の投稿者の日本語訳を提供します)

can you provide a screen shot (picture) of the blueprint that is getting the “child actor” making the change?
when you say “child actor” are you referring to an Actor that has been attached to another actor through something like AttachActor() (or the node with the same name)?
Are you maybe referring to an inheritance relationship? (I will be proceeding as though the first)
How are you obtaining the “child actor” from the parent/root actor, each data-object is typically maintained separately, and in programming we generally prefer things to be “responsible for themselves as much as possible”?

you might be using the version of the given function/node that only returns “the first thing found” (often times the first instance that is created/attached, but that is not absolutely consistent); in many of these cases there is a node that returns all of the given thing that matches the criteria.
for example there is a FindActorOfClass() node that returns the first Actor found of that type, but there is also a FindAllActorsOfClass() node which returns an Array<Actor> of that type. Then you can walk through that Array with a ForEach.

「子役」に変更を加えているブループリントのスクリーンショット (写真) を提供していただけますか?
「子アクター」と言うとき、AttachActor() などを通じて別のアクターにアタッチされたアクター (または同じ名前のノード) を指しますか?
もしかして相続関係のことを言っているのでしょうか? (最初と同じように進めていきます)
親/ルート アクターから「子アクター」をどのように取得しますか。各データ オブジェクトは通常、個別に維持されます。また、プログラミングでは一般的に、物事が「可能な限り自分自身に責任を持つ」ことを好みます。

「最初に見つかったもの」のみを返す、指定された関数/ノードのバージョンを使用している可能性があります (多くの場合、最初に作成/アタッチされたインスタンスですが、完全に一貫しているわけではありません)。これらの場合の多くは、条件に一致するすべての指定されたものを返すノードがあります。
「最初に見つかったもの」のみを返す、指定された関数/ノードのバージョンを使用している可能性があります (多くの場合、最初に作成/アタッチされたインスタンスですが、完全に一貫しているわけではありません)。これらの場合の多くは、条件に一致するすべての指定されたものを返すノードがあります。
たとえば、そのタイプで最初に見つかったアクタを返す FindActorOfClass() ノードがありますが、そのタイプの Array<Actor> を返す FindAllActorsOfClass() ノードもあります。その後、ForEach を使用してその配列をウォークスルーできます。

thank you for reply, Gardian206

parent BP

ChildBP-A

Child-B

problem

it looks like your widget is not getting multiple things from multiple sources, but that you have multiple Widgets each getting the strings from a single source.

I would suggest having a single widget that gets the information separate to the actors themselves, and then the Widget gets the information from the Actor as needed.

you could give the widget a single Text variable that can be assigned to. then use the most recent assignment. where in the Widget only display what is in that Text variable.

if you want to have multiple things listed in the Widget then you could give the Widget an array of strings, and then have your objects add to the Array instead of just assigning the exact value.
an alternative is to give these Actors a component that has this string information, and instead of the Widget storing the string itself, it stores a reference to the Actors, and retrieves the string from the Actors when needed.

ウィジェットが複数のソースから複数のものを取得しているのではなく、それぞれが単一のソースから文字列を取得している複数のウィジェットがあるようです。

アクター自体とは別に情報を取得する単一のウィジェットを用意し、そのウィジェットが必要に応じてアクターから情報を取得することをお勧めします。

ウィジェットに割り当て可能な単一の Text 変数を与えることができます。その後、最新の割り当てを使用します。ウィジェットでは、その Text 変数の内容のみが表示されます。

ウィジェットに複数のものをリストしたい場合は、正確な値を割り当てるのではなく、ウィジェットに文字列の配列を与え、オブジェクトを配列に追加させることができます。
別の方法は、これらのアクタにこの文字列情報を持つコンポーネントを与え、ウィジェットが文字列自体を保存する代わりに、アクタへの参照を保存し、必要に応じてアクタから文字列を取得することです。

Thank you very much for your precise advice!I was able to change the system and fix the problem