程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> EnemyAI

EnemyAI

編輯:C#入門知識

[csharp] 
using UnityEngine; 
using System.Collections; 
 
public class EnemyAI : MonoBehaviour { 
    public Transform target; 
    public int moveSpeed; 
    public int rotationSpeed; 
    public int maxDistance; 
     
    private Transform myTransform; 
     
    void Awake () { 
        myTransform = transform; 
    } 
     
    // Use this for initialization 
    void Start () { 
        GameObject go = GameObject.FindGameObjectWithTag("Player"); 
         
        target = go.transform; 
         
        maxDistance = 2; 
    } 
     
    // Update is called once per frame 
    void Update () { 
        Debug.DrawLine(target.position, myTransform.position, Color.yellow); 
         
        // Look at target(rotate) 
        //      The below three lines is for test. 
        //          Quaternion test = new Quaternion(0, 0, 0,0); 
        //          test.SetLookRotation(target.position, target.position); 
        //          transform.rotation = test; 
        myTransform.rotation = Quaternion.Slerp(myTransform.rotation, Quaternion.LookRotation(target.position - myTransform.position), rotationSpeed * Time.deltaTime); 
     
        // Move towards target 
        if (Vector3.Distance(target.position, myTransform.position) > maxDistance) 
            myTransform.position += myTransform.forward * moveSpeed * Time.deltaTime; 
    } 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved