2016-09-18 12 views
0

私はGrounded整数変数の大文字小文字をテストするためにこのswitch文を使用していますが、私のUnity-Monodevelopは私のコード内に奇妙な構文エラーがあると言います。誰かが私にそれが間違っていることを教えてくれることを願っています。C#switch syntax error

private void JumpController() { 
    if (Input.GetAxis("Jump")) { // if jump switch to action 
     switch (Grounded) { 
     0: // On ground; 
      Jump(); 
      Grounded = 1; 
      break; 
     1: // Jumped once; 
      Jump(); 
      Grounded = 2; 
      break; 
     2: // Jumped twice; 
      Debug.print ("Grounded = 2"); 
      break; 
     default: break; 
     } 
    } 
} 

An Image showing the errors

+0

ケースX:? ...... – StuartLC

+1

あなたは 'case'キーワードがありません。例:case 0:Jump(); –

答えて

1

私はあなたの例の前caseを追加することをお勧めします。これにより、エラーが修正されるはずです。

private void JumpController() { 
    if (Input.GetAxis("Jump")) { // if jump switch to action 
     switch (Grounded) { 
     case 0: // On ground; 
      Jump(); 
      Grounded = 1; 
      break; 
     case 1: // Jumped once; 
      Jump(); 
      Grounded = 2; 
      break; 
     case 2: // Jumped twice; 
      Debug.print ("Grounded = 2"); 
      break; 
     default: break; 
     } 
    } 
} 
+0

ありがとうございましたありがとうございました。私が使用していた構造ガイドでさえそれを見逃したとは思えませんでしたが、私はそれらを見落としました。このエラーを修正すると、私は最終的に私のif文である本当のエラーを得ました。 –

+0

答えを正しいものとしてマークしますか?他の人が簡単に答えを見つけることができます。 –

+0

確かです。私はこれを正しくやったことを願っています - このサイトはちょっとだけ、Googleのリファレンスからではなく、実際のユーザーとして初めて使うのは混乱しています。 –