言語: 日本語
  • C#
  • JS
  • Boo

スクリプト言語

お好みのスクリプト言語を選択すると、サンプルコードがその言語で表示されます。

GameObject.FindGameObjectsWithTag

public static function FindGameObjectsWithTag(tag: string): GameObject[];

Parameters

tag GameObjects を検索するためのタグ名

Description

/tag/でタグ付けされたアクティブなゲームオブジェクトのリストを返します。もし見つからない場合は空配列を返します

この関数を使用する前にタグマネージャーでタグの設定を行う必要があります。タグが存在しない、または空文字や null を渡した場合は UnityException の例外が発生します。

	// Instantiates respawnPrefab at the location 
	// of all game objects tagged "Respawn".

	var respawnPrefab : GameObject;
	var respawns;
	function Start()
	{
		if (respawns == null)
			respawns = GameObject.FindGameObjectsWithTag ("Respawn");
		for (var respawn in respawns)
			Instantiate (respawnPrefab, respawn.transform.position, respawn.transform.rotation);
	}

他の例:

	// Print the name of the closest enemy
	print(FindClosestEnemy().name); 
	
	// Find the name of the closest enemy
	function FindClosestEnemy () : GameObject {
		// Find all game objects with tag Enemy
		var gos : GameObject[];
		gos = GameObject.FindGameObjectsWithTag("Enemy"); 
		var closest : GameObject; 
		var distance = Mathf.Infinity; 
		var position = transform.position; 
		// Iterate through them and find the closest one
		for (var go : GameObject in gos)  { 
			var diff = (go.transform.position - position);
			var curDistance = diff.sqrMagnitude; 
			if (curDistance < distance) { 
				closest = go; 
				distance = curDistance; 
			} 
		} 
		return closest;	
	}

他の例: 空配列のテスト

    // Search for game objects with a tag that is not used

    function Start () {
        var gos : GameObject[];
        gos = GameObject.FindGameObjectsWithTag("fred"); 
  
        if (gos.length == 0) {
            Debug.Log("No game objects are tagged with fred");
        }
}