(Unity)Trapに触れると敵が出現するようにする。

投稿日: カテゴリー: Unity(V5.3.6)

1)Trapを作成

・Hierarchyで「Create Empty」を1つ作成。

・名前を「Trap」に変更

・プレーヤーを感知するために「Box Collider」の機能を追加する。

*Colliderの大きさは自由に変更してください。

*このColliderにプレーヤーが触れたら敵が出現するという仕組みです。


2)スクリプトを作成する。

・新たにC#スクリプトを1つ作成してください。

・名前を「Trap」に変更しましょう。

using UnityEngine;
using System.Collections;

public class Trap : MonoBehaviour {

	public GameObject enemy1;

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

			enemy1.SetActive(true);
		}
	}
}

・コードが書けたらチェック。

・このスクリプトを「Trap」オブジェクトに付けましょう。

*今回は「Trigger」系のメソッドを書いたので、「Is Trigger」にチェック!


3)敵の設定

・敵を出現させたい場所に「配置」しましょう。

・次に、敵を選択したままで、「Inspector」の名前の横の「チェック」を外してください。

これで一旦、敵が画面から見えなくなります。

・「Trap」オブジェクトを選択→Enemy1の空欄に「出現させたい敵オブジェクト」をドラッグ&ドロップする。

これで設定が完了です。

ゲームを再生してみましょう。

Trapの感知領域に入った時、敵が出現すれば成功です。