teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

8

修正、追加

2025/06/26 22:39

投稿

Tora_ou
Tora_ou

スコア16

title CHANGED
File without changes
body CHANGED
@@ -59,9 +59,10 @@
59
59
 
60
60
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/13424246-3d01-4378-866f-a329c9c6888a.jpeg)↑上のほう(枠の画像、名前がslot)には「slot」というスクリプトが付いています
61
61
  「slot」というスクリプトの中身は
62
- private Item item; 
63
- Image image;   
64
62
 
63
+ private Item item; 
64
+ [SerializeField]Image image; 
65
+
65
66
  private void Awake()
66
67
  {
67
68
  image = GetComponent<Image>();  //imageにImageコンポーネントを入れる

7

画像の追加

2025/06/26 22:38

投稿

Tora_ou
Tora_ou

スコア16

title CHANGED
File without changes
body CHANGED
@@ -88,4 +88,6 @@
88
88
  中のアイテム(名前がItemImage)の部分へと貼り替えてみましたが
89
89
  それだとエラー
90
90
   NullReferenceException: Object reference not set to an instance of an object
91
- で止まってしまう。
91
+ で止まってしまう。
92
+
93
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/9dd3c663-11d7-404e-ad47-bce517dfd088.jpeg)↑slot(枠部分)のimageを子オブジェクト(ItemImage)にすれば良さそう、、と思ったのでそれもやってみたのですが、それをしても何も変化が無くて枠の部分を書き換えてしまう症状は何も変わらなかったです。

6

なおし

2025/06/26 21:38

投稿

Tora_ou
Tora_ou

スコア16

title CHANGED
File without changes
body CHANGED
@@ -57,8 +57,8 @@
57
57
  ### 補足
58
58
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/6d4eaa50-42dc-42bd-b8dd-62e359628549.jpeg)↑スロットのprefabは2重構造になっていて・・・
59
59
 
60
- ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/13424246-3d01-4378-866f-a329c9c6888a.jpeg)↑上のほう(枠の画像、名前がslot)にはslotというスクリプトが付いています
60
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/13424246-3d01-4378-866f-a329c9c6888a.jpeg)↑上のほう(枠の画像、名前がslot)にはslotというスクリプトが付いています
61
- 中身は
61
+ 「slot」というスクリプトの中身は
62
62
  private Item item; 
63
63
  Image image;   
64
64
 

5

コードが二分割されてる、直したい

2025/06/26 21:37

投稿

Tora_ou
Tora_ou

スコア16

title CHANGED
File without changes
body CHANGED
@@ -62,20 +62,20 @@
62
62
  private Item item; 
63
63
  Image image;   
64
64
 
65
- private void Awake()
65
+ private void Awake()
66
- {
66
+ {
67
- image = GetComponent<Image>();    //imageにImageコンポーネントを入れる
67
+ image = GetComponent<Image>();  //imageにImageコンポーネントを入れる
68
- }
68
+ }
69
69
 
70
- public void SetItem(Item item)
70
+ public void SetItem(Item item)
71
- {
71
+ {
72
-   UpdateImage(item);   //すぐ下の関数を呼び出してる
72
+   UpdateImage(item);   //すぐ下の関数を呼び出してる
73
- }
73
+ }
74
74
 
75
- void UpdateImage(Item item)
75
+ void UpdateImage(Item item)
76
- {
76
+ {
77
- image.sprite = item.sprite;     //Slotのimageにクリックしたアイテムのspriteを入れる
77
+   image.sprite = item.sprite;  //Slotのimageにクリックしたアイテムのspriteを入れる
78
- }
78
+ }
79
79
 
80
80
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/ec70cbcf-1ea4-4b5f-b68c-c1baec185086.jpeg)↑これで最初この状態(全部空っぽ)だった枠が
81
81
 

4

コードがブツ切りになってしまったので

2025/06/26 21:36

投稿

Tora_ou
Tora_ou

スコア16

title CHANGED
File without changes
body CHANGED
@@ -64,20 +64,17 @@
64
64
 
65
65
  private void Awake()
66
66
  {
67
-    //imageにImageコンポーネントを入れる
68
- image = GetComponent<Image>();
67
+ image = GetComponent<Image>();    //imageにImageコンポーネントを入れる
69
68
  }
70
69
 
71
70
  public void SetItem(Item item)
72
71
  {
73
-  //すぐ下の関数を呼び出してる
72
+   UpdateImage(item);   //すぐ下の関数を呼び出してる
74
-   UpdateImage(item);
75
73
  }
76
74
 
77
75
  void UpdateImage(Item item)
78
76
  {
79
-     //Slotのimageにクリックしたアイテムのspriteを入れる
77
+ image.sprite = item.sprite;     //Slotのimageにクリックしたアイテムのspriteを入れる
80
- image.sprite = item.sprite;
81
78
  }
82
79
 
83
80
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/ec70cbcf-1ea4-4b5f-b68c-c1baec185086.jpeg)↑これで最初この状態(全部空っぽ)だった枠が

3

修正

2025/06/26 21:34

投稿

Tora_ou
Tora_ou

スコア16

title CHANGED
File without changes
body CHANGED
@@ -57,7 +57,7 @@
57
57
  ### 補足
58
58
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/6d4eaa50-42dc-42bd-b8dd-62e359628549.jpeg)↑スロットのprefabは2重構造になっていて・・・
59
59
 
60
- ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/13424246-3d01-4378-866f-a329c9c6888a.jpeg)↑slotというスクリプトが付いています
60
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/13424246-3d01-4378-866f-a329c9c6888a.jpeg)↑上のほう(枠の画像、名前がslot)にはslotというスクリプトが付いています
61
61
  中身は
62
62
  private Item item; 
63
63
  Image image;   
@@ -87,7 +87,8 @@
87
87
  (上段の3番目のスロットに画像が入ってる、枠の部分なので隠れてあんまり見えてない)
88
88
 
89
89
  枠の部分では無くて、アイテムの部分に入って欲しいが指定方法がわからない。
90
- slotというスクリプトを、枠から外して、中のアイテムのほうに貼り替えてみたが
90
+ slotというスクリプトを、prefabのの部分(名前がslot)から外して
91
+ 中のアイテム(名前がItemImage)の部分へと貼り替えてみましたが
91
92
  それだとエラー
92
93
   NullReferenceException: Object reference not set to an instance of an object
93
94
  で止まってしまう。

2

追加

2025/06/26 21:31

投稿

Tora_ou
Tora_ou

スコア16

title CHANGED
File without changes
body CHANGED
@@ -55,4 +55,39 @@
55
55
  一日ずっと進まない状態が続くようなら諦めて一つ一つ、スロットをヒエラルキー上に10個作ります。
56
56
 
57
57
  ### 補足
58
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/6d4eaa50-42dc-42bd-b8dd-62e359628549.jpeg)↑スロットのprefabは2重構造になっていて・・・
59
+
60
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/13424246-3d01-4378-866f-a329c9c6888a.jpeg)↑slotというスクリプトが付いています
58
- 特になし
61
+ 中身は
62
+ private Item item; 
63
+ Image image;   
64
+
65
+ private void Awake()
66
+ {
67
+    //imageにImageコンポーネントを入れる
68
+ image = GetComponent<Image>();
69
+ }
70
+
71
+ public void SetItem(Item item)
72
+ {
73
+  //すぐ下の関数を呼び出してる
74
+   UpdateImage(item);
75
+ }
76
+
77
+ void UpdateImage(Item item)
78
+ {
79
+     //Slotのimageにクリックしたアイテムのspriteを入れる
80
+ image.sprite = item.sprite;
81
+ }
82
+
83
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/ec70cbcf-1ea4-4b5f-b68c-c1baec185086.jpeg)↑これで最初この状態(全部空っぽ)だった枠が
84
+
85
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2025-06-27/616477ae-5db4-4c73-b0d3-ed5bf89039d2.jpeg)
86
+ ↑アイテムがちゃんと入ってはくれるのだがこのように枠の部分の画像に入ってしまう
87
+ (上段の3番目のスロットに画像が入ってる、枠の部分なので隠れてあんまり見えてない)
88
+
89
+ 枠の部分では無くて、アイテムの部分に入って欲しいが指定方法がわからない。
90
+ slotというスクリプトを、枠から外して、中のアイテムのほうに貼り替えてみたが
91
+ それだとエラー
92
+  NullReferenceException: Object reference not set to an instance of an object
93
+ で止まってしまう。

1

修正

2025/06/26 19:33

投稿

Tora_ou
Tora_ou

スコア16

title CHANGED
File without changes
body CHANGED
@@ -47,8 +47,9 @@
47
47
  - [ ] その他
48
48
 
49
49
  ##### 上記の詳細・結果
50
+ アイテムスロット10個ぐらいならPrefabで自動的に生成せずに
50
51
  一つ一つ、スロットをヒエラルキー上に10個作れば解決はすると思うのですが
51
- Prefabを使った練習、勉強をしてみたいのです。
52
+ Prefabを使練習、勉強をしてみたいのです。
52
53
 
53
54
  Prefab、便利だけど使うのはとても難しくて・・・でも逃げて使わずにいても向上しないと思うので。
54
55
  一日ずっと進まない状態が続くようなら諦めて一つ一つ、スロットをヒエラルキー上に10個作ります。