###前提・実現したいこと
プレイヤーをおいかけて、近くまできたらとまらせたい。
###発生している問題・エラーメッセージ
追いかけてくるが、とまらない。
どういう風にif文の条件を設定すればよいかアドバイスをいただきたいです。
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4 5public class enemyController : MonoBehaviour { 6 7 public GameObject character; //プレイヤーモデルを設定 8 Vector3 target; 9 Animator animator; 10 public float speed; //1.5に設定 11 12 // Use this for initialization 13 void Start () { 14 animator = GetComponent<Animator> (); 15 } 16 17 // Update is called once per frame 18 void Update () { 19 target.x = character.transform.localPosition.x; 20 target.y = character.transform.localPosition.y; 21 target.z = character.transform.localPosition.z; 22 transform.LookAt (new Vector3 (target.x, target.y, target.z)); 23 transform.position += transform.forward * speed * Time.deltaTime; //追いかける 24 if (transform.position == character.transform.position) { //これだと完璧にプレイヤーのポジションと合わないと判断されないのでアドバイスを頂きたいです 25 speed = 0.0f; //止める 26 } 27 } 28 29 30 void OnTriggerEnter(Collider other){ 31 if (other.gameObject.tag == "player") { 32 animator.SetBool ("Walk", true); 33 34 } 35 } 36 37 void OnTriggerExit(Collider other){ 38 animator.SetBool ("Walk", false); 39} 40}
プログラム初心者なので初歩的なこともわからなく、申し訳ないのですがよろしくお願い致します。
###補足情報(言語/FW/ツール等のバージョンなど)
Unity5.6.1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/06/13 07:43