C#
1//これを配列にする理由は、一つずつbool変数の名前と値を書いていくのがめんどくさいから 2bool[] arrayBool = { true }; 3 4//敵を倒すとポイントが増える(1ずつとは限らない) 5int point = 0; 6 7void Point() 8{ 9 if(arrayBool[0] == true) 10 { 11 if(point >= 1) 12 { 13 Debug.Log("arrayBool[0] == true"); 14 arrayBool[0] = false; 15 } 16 } 17 18 if(arrayBool[1] == true) 19 { 20 if(point >= 2) 21 { 22 Debug.Log("arrayBool[0] == true"); 23 arrayBool[1] = false; 24 } 25 } 26 27 //これが全部で7回続く ~arrayBool[7] 28}
###コードについて追記
__if(arrayBool[n] == true)__はその中のif文を一度しか処理しないために組んだものです。
順序としては、arryaBool[]の7個の変数がすべてtrueであり、ある一定のpointが貯まると__if(point >= x)__内が実行され、arrayBool[n]をfalseにすることによってそれを今後処理しないようにします。
これで**Point()**が呼ばれたときにデバッグのログを出したいのですが、エラーが出ます。
正直言うと配列のことをあまり理解できていなくて誤解していると自分でも思っています。
配列とは、多くなってしまう変数を一つの変数からまとめて管理できるようにしたもので、
対象物が多いときに配列を使うと便利なもの。
という認識ですがこの考え方はあってるのでしょうか?
エラーも出ています。
IndexOutOfRangeException: Index was outside the bounds of the array.
エラー範囲はちょうどif文のところです。
どなたか回答お願いします。
回答5件
あなたの回答
tips
プレビュー