④オブジェクトを振動させるアニメーション

1)事前準備

今回は「iTween」というシステムを活用します。

まず、下記リンクより「iTween」スクリプトをダウンロードしてください。

*Unityデータ

ダウンロードしたら「ダブルクリック」で解凍。

次に、そのスクリプトを自分のプロジェクトの「Scripts」フォルダの中に入れてください。

これで準備完了です。

スクリーンショット 2016-07-20 12.38.36 スクリーンショット 2016-07-20 12.38.44


2)コードを追加する(★追加の部分)

今回は、敵の砲弾が当たった時に、プレーヤーが振動するようにしてあります。

using UnityEngine;
using System.Collections;

public class DestroyObject : MonoBehaviour {

	public GameObject effectPrefab1;
	public GameObject effectPrefab2;
	public int objectHP;

	void OnTriggerEnter(Collider other){
		if(other.gameObject.CompareTag("Shell")){

			objectHP -= 1;

			if(objectHP > 0){

				GameObject effect1 = Instantiate(effectPrefab1, transform.position, Quaternion.identity) as GameObject;
				Destroy(effect1, 1.0f);

				Destroy(other.gameObject);

				// ★追加
				// Shake()メソッドを呼び出す。
				Shake();

			} else {

				GameObject effect2 = Instantiate(effectPrefab2, transform.position, Quaternion.identity) as GameObject;
				Destroy(effect2, 1.0f);

				Destroy(other.gameObject);

				Destroy(gameObject);
			}
		}
	}

	// ★追加
	// オブジェクトを指定した通りに「振動」させるアニメーション・メソッド
	public void Shake(){

		iTween.ShakePosition(gameObject, iTween.Hash("x", 0.1f, "y", 0.1f, "islocal", true, "time", 0.5f));
	}
}