Unity ゲーム エンジンを使用していますが、コードの一部で問題が発生しました。
function NoteDecision(n :String) {
Debug.Log("-"+n+"-"); // This is returning -G- which means its just "G"
Debug.Log(n=="G"); // This is returning false, although n is G
switch (n){
case "G":
Instantiate(GreenNote, SGreenNote.position, SGreenNote.rotation); break;
case "R":
Instantiate(RedNote, SRedNote.position, SRedNote.rotation); break;
case "Y":
Instantiate(YellowNote, SYellowNote.position, SYellowNote.rotation); break;
case "B":
Instantiate(BlueNote, SBlueNote.position, SBlueNote.rotation); break;
case "O":
Instantiate(OrangeNote, SOrangeNote.position, SOrangeNote.rotation); break;
default : Debug.Log("There is a problem here...");
}
}
したがって、ここのコードは変更されていませんが、機能しなくなってから何が変更されたかはわかります。
変数 n は、String.Split() を使用して分割した文字列の後半を保持します。以前は、コンマ前に後半を保持していました。
Y,023.19592 // this is what it used to look like
023.19592,Y // this is what it looks like now
とにかく、ここにコードの他のスニペットがあります
note = lines[position].Split(","[0]); // this is where it gets split.
NoteDecision (note[1]); // calling the function above.
それで、誰が問題が何であるか、または解決策を知っていますか?