(スクリプト)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class BotLookAt : MonoBehaviour
{
private GameObject[] targets;
private GameObject minimumHPBot;
void Start()
{
StartCoroutine(MinimumLookAt());
}
private IEnumerator MinimumLookAt()
{
yield return new WaitForSeconds(2f);
while(true)
{
// タグを使って画面上の全てのBotの情報を取得
targets = GameObject.FindGameObjectsWithTag("Bot");
// 基準HPの設定
int baseHP = 1000;
foreach(GameObject t in targets)
{
int tHP = t.GetComponent<BotHP>().HP;
// もしも基準HPよりも、今回取得したBotのHPの方が小さいならば
if(tHP < baseHP)
{
// baseHPの中身をtHPで更新する。
// これを繰り返すことで一番HPの小さいBotを見つけることができる。
baseHP = tHP;
// 一番HPの小さいBotの情報をminimumHPBotという変数に代入する。
minimumHPBot = t;
}
}
yield return new WaitForSeconds(0.5f);
// 一番HPの小さいBotに向きを変える。
transform.LookAt(minimumHPBot.transform);
yield return new WaitForSeconds(3f);
}
}
}
(実行結果)