回答編集履歴
1
追記
answer
CHANGED
@@ -1,3 +1,31 @@
|
|
1
1
|
情報があまりに少なすぎる(※)ので直感ですが、PlacedPartに値が入る前にGetPlacedPart()を実行してしまっているのではないでしょうか。
|
2
2
|
|
3
|
-
(※:PlacedPartを設定している箇所やGetPlacedPart()を呼び出している箇所のコードすら無い状態で調査しろとか、いくら何でも無理です)
|
3
|
+
(※:PlacedPartを設定している箇所やGetPlacedPart()を呼び出している箇所のコードすら無い状態で調査しろとか、いくら何でも無理です)
|
4
|
+
|
5
|
+
---
|
6
|
+
|
7
|
+
追記:
|
8
|
+
|
9
|
+
質問の編集内容を確認しました。
|
10
|
+
今のところ原因はまだ分からないので、以下のようにコードを変更し(またはデバッガを使って)、PlacedPartがどこのどのタイミングで変更されているか確認してみてください。
|
11
|
+
|
12
|
+
```C#
|
13
|
+
public PuzzleParts PlacedPart = null;
|
14
|
+
```
|
15
|
+
↓
|
16
|
+
```C#
|
17
|
+
[SerializeField]
|
18
|
+
PuzzleParts PlacedPartObject = null;
|
19
|
+
public PuzzleParts PlacedPart
|
20
|
+
{
|
21
|
+
get
|
22
|
+
{
|
23
|
+
return PlacedPartObject;
|
24
|
+
}
|
25
|
+
set
|
26
|
+
{
|
27
|
+
Debug.Log("Change PlacedPart: " + PlacedPartObject + "→" + value); // 出力されたログのスタックトレースを確認
|
28
|
+
PlacedPartObject = value;
|
29
|
+
}
|
30
|
+
}
|
31
|
+
```
|