Скрипт слежения нужна помощь - Форум Игроделов
Пн, 20 Май 2024, 03:44 
 
Приветствую Вас Гость Главная | Регистрация | Вход
Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум Игроделов » UNITY3D » HELP & FAQ » Скрипт слежения нужна помощь
Скрипт слежения нужна помощь
MrKyzminДата: Вс, 23 Сен 2012, 18:48 | Сообщение # 1
 
Сообщений: 70
Награды: 0
Репутация: 1
Статус: Offline
Есть скрипт слежения за Игроком вопрос в том как сделать так что бы он двигался за игроком только когда заходишь со стороны Enemy Camera:

Code

using UnityEngine;
using System.Collections;

public class AIMOB : 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;
    
  }
   
  // Update is called once per frame
  void Update () {
  Debug.DrawLine(target.position,
    myTransform.position,
    Color.yellow);
   myTransform.rotation = Quaternion.Slerp(myTransform.rotation,
    Quaternion.LookRotation(target.position - myTransform.position),
    rotationSpeed*Time.deltaTime);
   if(Vector3.Distance(target.position, myTransform.position) >= maxDistance){
    myTransform.position += myTransform.forward * moveSpeed * Time.deltaTime;
  }
}
}


/人◕ ‿‿ ◕人\

Если помог не поленитесь и поставьте +
 
СообщениеЕсть скрипт слежения за Игроком вопрос в том как сделать так что бы он двигался за игроком только когда заходишь со стороны Enemy Camera:

Code

using UnityEngine;
using System.Collections;

public class AIMOB : 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;
    
  }
   
  // Update is called once per frame
  void Update () {
  Debug.DrawLine(target.position,
    myTransform.position,
    Color.yellow);
   myTransform.rotation = Quaternion.Slerp(myTransform.rotation,
    Quaternion.LookRotation(target.position - myTransform.position),
    rotationSpeed*Time.deltaTime);
   if(Vector3.Distance(target.position, myTransform.position) >= maxDistance){
    myTransform.position += myTransform.forward * moveSpeed * Time.deltaTime;
  }
}
}

Автор - MrKyzmin
Дата добавления - 23 Сен 2012 в 18:48
TheReaperДата: Вс, 23 Сен 2012, 19:42 | Сообщение # 2
Meet the revolution
 
Сообщений: 2738
Награды: 23
Репутация: 679
Статус: Offline
MrKyzmin, в скриптинге разбираюсь почти никак. Но в Вовином скрипте движения персонажей по вейпоинтам должно быть, так как они поворачиваются, когда игрок именно рядом.



 
СообщениеMrKyzmin, в скриптинге разбираюсь почти никак. Но в Вовином скрипте движения персонажей по вейпоинтам должно быть, так как они поворачиваются, когда игрок именно рядом.

Автор - TheReaper
Дата добавления - 23 Сен 2012 в 19:42
MrKyzminДата: Вс, 23 Сен 2012, 20:23 | Сообщение # 3
 
Сообщений: 70
Награды: 0
Репутация: 1
Статус: Offline
Можно по подробней

/人◕ ‿‿ ◕人\

Если помог не поленитесь и поставьте +
 
СообщениеМожно по подробней

Автор - MrKyzmin
Дата добавления - 23 Сен 2012 в 20:23
commandobyДата: Вс, 23 Сен 2012, 23:36 | Сообщение # 4
Unity 3D Free
 
Сообщений: 836
Награды: 3
Репутация: 211
Статус: Offline
Что, если создать перед камерой триггер?

Блог.
 
СообщениеЧто, если создать перед камерой триггер?

Автор - commandoby
Дата добавления - 23 Сен 2012 в 23:36
Форум Игроделов » UNITY3D » HELP & FAQ » Скрипт слежения нужна помощь
  • Страница 1 из 1
  • 1
Поиск:
Загрузка...

Game Creating CommUnity © 2009 - 2024