質問編集履歴

3

修正

2020/05/29 05:37

投稿

MOTOMUR
MOTOMUR

スコア195

test CHANGED
File without changes
test CHANGED
@@ -18,9 +18,19 @@
18
18
 
19
19
  ```
20
20
 
21
- text(Object)のtextに代入する場合、text(Object)内のスクリプト上ではtext.text = anyなのはわかりますが、GameObject内のtext(Object)のtextに代入する場合はGameObjectにスクリプト貼って「」.text.text = any(「」が不明)で代入できるのでしょうかそれともできないんでしょうか。
21
+ text(Object)のtextに代入する場合、text(Object)内のスクリプト上ではtext.text = anyなのはわかりますが、GameObject内のtext(Object)のtextに代入する場合は
22
22
 
23
23
 
24
+
25
+ GameObjectにスクリプト貼って
26
+
27
+ GameObject obj = GameObject.Find("PlayerUnit");
28
+
29
+ obj.text.text = "hoge";
30
+
31
+ 上記の方法で代入できるということで間違いありませんでしょうか。
32
+
33
+ また、”hoge”は上記例では文字列ですが、本来は値の変更があるscriptableObjectを参照しており、動的にそのscriptableObjectが変更された値を反映させたいのですが、このスクリプト上にもResouses.LoadをUpdate()内で無限に呼び出さないといけませんか。(PlayerUnitだけでなく、シーンにResouses.LoadをUpdate()内で無限に呼び出すスクリプトが紐づけられています。)
24
34
 
25
35
 
26
36
 

2

内容整理

2020/05/29 05:37

投稿

MOTOMUR
MOTOMUR

スコア195

test CHANGED
@@ -1 +1 @@
1
- scriptableObjectの中身の変更を動的にリスナーするには。
1
+ scriptableObjectの動的に変化する中身の参照方法と中身の変更方法
test CHANGED
@@ -22,12 +22,14 @@
22
22
 
23
23
 
24
24
 
25
- ➁sctiptableObjectの変更を随時読み込みたい。
26
-
27
- Update()内にResouses.Loadを入れて更新し続ければScriptableObjectの値の変更を常時監視できるようにできるのは調べて分かりました。しかし、この扱いではUpdateが1フレームごとに毎回Resouses.Loadし続けるのでダサいやり方だなあと。(メモリの使用も増える。)
28
25
 
29
26
 
30
27
 
31
- scriptableObjects内のデータの書き換えがあったときにのみ更新できるようにしたい。
32
28
 
29
+ ➁sctiptableObjectの変更を保存したい。
30
+
31
+ ---
32
+
33
- それを実現するためにどうしらいいのか。検索しましたがその概念の言葉が表現きず解決は至らなかったため、お力をお貸しいただけと助かりま
33
+ ScriptableObjectの参照方法の例はたくさん検索で拝見しましたが、スクリプト上変更を動的保存す方法がわかりませんでした
34
+
35
+ そもそも保存方法はないんでしょうか。

1

内容整理

2020/05/29 05:32

投稿

MOTOMUR
MOTOMUR

スコア195

test CHANGED
File without changes
test CHANGED
@@ -1,19 +1,3 @@
1
- scriptableObjectの現在の読み込み方法はResouses.Load
2
-
3
- ---
4
-
5
- キャラクター(GameObject)にステータス(scriptableObject)を反映させたい。
6
-
7
- ステータスにはそれぞれ項目別にSetHP()とGetHP()を用意してるとする。
8
-
9
- start()内で一度だけResouses.Loadしてる。この1度だけStart内でとってきた状態のデータが格納されただけで、中身をリスナーしているわけではないですよね?
10
-
11
- どのように設定すれば変更を受け取れますか。
12
-
13
-
14
-
15
- また、代入でも困ってます。
16
-
17
1
  ⓵PlayerUnit(GameObject)への代入方法での躓き。
18
2
 
19
3
  ---
@@ -34,10 +18,16 @@
34
18
 
35
19
  ```
36
20
 
37
- このTextやsliderなどにscriptableObjectステータスを動的に代入するときPlayerUnitに事前にHPとかを入れる箱をスクリプトで用意してアタッチると思うんですけどPlayerUnitにscriptableObjectステータスを入れる箱(int HP,string Name)を用意するだけでNameとかHPBarから値ってアクセスできますか?それぞれNameとかそれぞれスクリプトが必要でしょうか。
21
+ text(Object)のtextに代入する場合text(Object)内のスクリプトはtext.text = anyなのはわかりまGameObject内のtext(Object)のtextに代入する場合はGameObjectにスクリプト貼って「」.text.text = any(「」不明)代入できるのでしょうかそれともできないんでしょうか
38
22
 
39
23
 
40
24
 
41
- そもそも、こ代入方法で中身リスナーできいんですけど、リスナーできないのであれば、リスナーできるような導入方法を教えてください
25
+ ➁sctiptableObject変更随時読み込みたい。
42
26
 
27
+ Update()内にResouses.Loadを入れて更新し続ければScriptableObjectの値の変更を常時監視できるようにできるのは調べて分かりました。しかし、この扱いではUpdateが1フレームごとに毎回Resouses.Loadし続けるのでダサいやり方だなあと。(メモリの使用も増える。)
28
+
29
+
30
+
43
- 調べましがわかりませんでした。
31
+ scriptableObjects内のデータの書き換えがあっときにのみ更新きるようにした
32
+
33
+ それを実現するためにはどうしたらいいのか。検索はしましたがその概念の言葉が表現できず解決には至らなかったため、お力をお貸しいただけると助かります。