「発射したのに、威力が弱すぎてスタート地点に戻ってくる」
を解決しようと思っています。
戻ってくると、必ず下の壁にぶつかる。
発射時のスピードが遅い+防御突き抜けて来た場合は、
一回リセット+スタートしなければいけない。
でもこれ、めんどくさくない?
やっぱり、戻ってきたらまたスタートを押したくなるよね。
今回はそれを解決しました。
この四角いオブジェクト。
これに、C#でこういうスクリプトを書く
using UnityEngine;
using System.Collections;
public class BackCoping : MonoBehaviour {
//衝突時の処理
public void OnCollisionEnter(Collision collision)
{
//ぶつかったものの指定(ボールかどうか)
if (collision.gameObject == GameObject.Find ("Blue Ball"))
{
GameObject resetComp;こんな感じ。
GameObject startComp;
//ボールが当たった時のみ以下の処理を発動させる
//ボールが当たった時はスタートボタンが押される前の状態に戻される
//スタートが押される前の状態とは
//「スタートボタン押された」フラグがfalseになっていること
//「リセットボタン押された」フラグがtrueになっていること
//これはスタートボタンを押すと逆転する
//なので戻ってきた時のためにフラグを戻す必要がある
startComp = GameObject.Find ("Start Button");
resetComp = GameObject.Find ("Reser Button");
startComp.GetComponent<ballshoot>().ButtonFlag = false;
resetComp.GetComponent<Reset>().ButtonFlag = true;
}
}
}
このスクリプトは、
いろいろ呼び出してるから、
「Blue Ball」
とか
「Start Button」
とか
「Reser Button」
(スペルミスしてます(直しません元がこれなので(Resetと書きたかったんだよねこれ)))
とか出てくるけど、
実際のところボールはブルーじゃない。
銀色のパチンコ球みたいなやつです。
次は、
「コリントの上板にキレイに木目のテクスチャを貼り付ける」
ということをやります。
0 件のコメント:
コメントを投稿