読者です 読者をやめる 読者になる 読者になる

デジタルフロッグ

Unityのアプリの開発をしながらいろいろと忘れないための備忘録でございます。

ネコがとにかくティッシュを散らかすという事

Unity 2D からあげ

f:id:karaagedigital:20150406201033g:plain

自宅でネコを飼ってるのですが、その風景を切り取ってみました。

画面をタップするとティッシュが飛び出るのですが、ティッシュの飛ぶ方向や飛ぶ力はランダムに飛ぶようになってます。

 

//ティッシュのPrefabをTissueobjに突っ込んでね

[SerializeField]
GameObject Tissueobj;

void Update(){ 

    //左クリック

    if (Input.GetMouseButtonDown (0)) {

        //Prefabを生成する
        Instantiate (Tissueobj,new Vector2(transform.position.x,transform.position.y),Quaternion.identity);
    }

}

 

上記はクリックするとティッシュを生成します。

 

このままだとティッシュが生成されるだけで飛ばなければ下に落ちないのでティッシュのPrefabにはRigidbody 2Dを追加しておいてください。

 

 // ティッシュにランダムな力を加える

void Start () {
switch( (int)System.Math.Floor (Random.value * 2)){
case 0:
    GetComponent<Rigidbody2D>().AddForce (Vector2.right * (100*(Random.value * 5)));
    break;
case 1:
    GetComponent<Rigidbody2D>().AddForce (Vector2.right * (-100*(Random.value * 5)));
    break;
}
    GetComponent<Rigidbody2D>().AddForce (Vector2.up * (100*(Random.value * 5)));
}

void Update () {
    // ティッシュに回転を与える(これもランダムにしてもOKです)

    transform.Rotate (new Vector3(5,0,10));
    Destroy (gameObject,3f);
}

 

これがティッシュに付与されているC#スクリプトです。

ティッシュがあっちこっちに回転して飛んでいきます。

 

うーんティッシュがあちこち飛んで行きます。

 

なんでこんなものを作ったのかいまだに自分でもわからないのですがなんか作ってしまったので上げておきます。

 

※ティッシュは大事にしましょう