###前提・実現したいこと
現在チュウニズムっぽい音ゲーをUnityを使って製作しています
###発生している問題・エラーメッセージ
横幅があるノーツに対してそのノーツの対応するキーを二つ同時に押してしまうと
メソッドを本来は一回しか呼び出したくないのに二回呼び出してしまいます
どうすれば一回だけ実行するようにできるかアイデアを下さい
(この状態でUとIとOを同時に押すと三回スコアが入って3コンボ加算されてしまうのを
一回だけ実行するようにしたい)
###ソースコード
void OnTriggerStay (Collider colider){ if (colider.gameObject.tag=="tap") { if (Input.GetKeyDown (KeyCode.Y) || Input.GetKeyDown (KeyCode.H) || Input.GetKeyDown(KeyCode.N)){ Destroy (colider.gameObject); Debug.Log ("tap!"); scoremanager.SendMessage("tap"); } }
これがそれぞれの場所に対応したキーを割り当ててアタッチしてある
(スクリプトはそれぞれが別々になっている)
そしてtapメソッドを呼び出してを呼び出す
void tap(){ score += tapscore; combo++; }
しかしこれをするとキーが同時に押された場合二回反応してしまう
###試したこと
音符側に呼び出す回数の制限を設ける
private int count; void tap(){ if(tap==0){ score += tapscore; combo++; tap=1; } }
初めての投稿なので分かりづらい部分があるかもしれませんが
回答お願いします<m(__)m>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/10/05 07:37
2016/10/05 07:57