GameObject.FindGameObjectsWithTag
Suggest a change
Success!
Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.
Close
Sumbission failed
For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.
Close
public static function FindGameObjectsWithTag(tag:
string):
GameObject[];
public static GameObject[] FindGameObjectsWithTag(string tag);
public static
def FindGameObjectsWithTag(tag as string)
as GameObject[]
Parameters
tag |
The name of the tag to search GameObjects for. |
Description
Returns a list of active GameObjects tagged tag
. Returns empty array if no GameObject was found.
Tags must be declared in the tag manager before using them. A UnityException
will be thrown if the tag does not exist or an empty string or null
is passed as the tag.
// 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);
}
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
public GameObject respawnPrefab;
public Object respawns;
void Start() {
if (respawns == null)
respawns = GameObject.FindGameObjectsWithTag("Respawn");
foreach (Object respawn in respawns) {
Instantiate(respawnPrefab, respawn.transform.position, respawn.transform.rotation) as GameObject;
}
}
}
import UnityEngine
import System.Collections
public class ExampleClass(MonoBehaviour):
public respawnPrefab as GameObject
public respawns as Object
def Start() as void:
if respawns == null:
respawns = GameObject.FindGameObjectsWithTag('Respawn')
for respawn as Object in respawns:
(Instantiate(respawnPrefab, respawn.transform.position, respawn.transform.rotation) as GameObject)
// 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;
}
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
GameObject FindClosestEnemy() {
GameObject[] gos;
gos = GameObject.FindGameObjectsWithTag("Enemy");
GameObject closest;
float distance = Mathf.Infinity;
Vector3 position = transform.position;
foreach (GameObject go in gos) {
Vector3 diff = go.transform.position - position;
float curDistance = diff.sqrMagnitude;
if (curDistance < distance) {
closest = go;
distance = curDistance;
}
}
return closest;
}
void Example() {
print(FindClosestEnemy().name);
}
}
import UnityEngine
import System.Collections
public class ExampleClass(MonoBehaviour):
def FindClosestEnemy() as GameObject:
gos as (GameObject)
gos = GameObject.FindGameObjectsWithTag('Enemy')
closest as GameObject
distance as float = Mathf.Infinity
position as Vector3 = transform.position
for go as GameObject in gos:
diff as Vector3 = (go.transform.position - position)
curDistance as float = diff.sqrMagnitude
if curDistance < distance:
closest = go
distance = curDistance
return closest
def Example() as void:
print(FindClosestEnemy().name)
Another example, testing for empty array: