###前提・実現したいこと
こちらのサイトをみながら、Unityでブロック崩しゲームを作っています。
###発生している問題・エラーメッセージ
上記ウェブサイト中で、「ボールが消えたときに残機数を1減らし、残機数が1残っていればボールを再び出現させる」のタイトルのところで、見本通りにスクリプトを書きましたが、うまいくいきません。一つ目のボールはBottomWallにぶつかった後新しいボールが出てきて残機数が3→2に減るのですが、2つ目のボールはPlayer(ボールを跳ね返すバー)もBottomWallも貫通して(反応しない)、下まで落ちてしまいます。また、BottomWallに「ぶつかった」にも関わらず、残機数が2のままで減りません。
2つ目のボールもBottomWallにぶつかると残機数が2→1に減り、新しいボールがでてくるようにするには、どうしたら良いでしょうか?
エラーメッセージ
###該当のソースコード
どのソースが原因なのかわかりませんが、残機計算をするプログラムはBottomWall.Scriptに書きましたので、まずはこれを載せます。
JavaScriptです。
#pragma strict var obj :GameObject; var script :SceneScript; var ball :Transform; obj = GameObject.Find("SceneScript"); script = obj.GetComponent(SceneScript); function OnCollisionEnter (collision : Collision) { Destroy(collision.gameObject); if(script.life > 0){ Instantiate(ball); script.life--; } else if (script.life == 0){ Application.LoadLevel("GameOver"); } }
###試したこと
スペルのチェック
Unityを再起動
###補足情報(言語/FW/ツール等のバージョンなど)
Unityのバージョンは5.6.1f1。
エディターはAtomを使っています。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/16 11:45 編集
2017/08/16 12:16
2017/08/16 13:33
2017/08/17 05:39
2017/08/18 14:12