EchoIT, в первом случае:
Код
gameObject.transform.position = Vector3.Lerp (gameObject.transform.position, transfArray [count].position, speed);
Во втором:
Код
transfArray[i-1] = GameObject.Find(name).GetComponent<Transform>();
Добавлено (15 марта 2017, 14:21)
---------------------------------------------
Ребята, второй вопрос отпадает. Был мой косяк, походу связанный с именами...
Вот рабочий код:
Код
using UnityEngine;
using System.Collections;
private Transform[] transfArray;
private int count;
private int size;
public int max; //количество точек
private bool arr = true;
void Start()
{
transfArray = new Transform[max];
for (int i = 1; i <= max; i++)
{
string name = "Sphere " + i.ToString();
transfArray[i-1] = GameObject.Find(name).GetComponent<Transform>();
}
if (size == 0)
{
arr = false;
}
}
public void hpDamage(float damageTover)
{
hp -= damageTover;
}
//Движение в "if" происходит
void Update ()
{
if (arr) {
gameObject.transform.position = Vector3.Lerp (gameObject.transform.position, transfArray [count].position, speed);
if (Vector3.Distance (gameObject.transform.position, transfArray [count].position) < 0.2f) {
if (count == size) {
//Destroy (transfArray [count].gameObject);
//Дамаг таверу.
} else
count++;
}
}
}
}
Если кому надо, пробуйте, должно работать, только имена меняйте на свои.
Но, движение получается рывками, от точке к точке.Добавлено (15 марта 2017, 14:22)
---------------------------------------------
Можно закрывать...
Добавлено (15 марта 2017, 14:36)
---------------------------------------------
А вот, если заменить Update на такой, то будет плавно c:
Код
void Update ()
{
if (arr) {
//gameObject.transform.position = Vector3.Lerp (gameObject.transform.position, transfArray [count].position, speed);
transform.Translate(Vector3.Normalize(transfArray[count].position - transform.position) * Time.deltaTime * speed);
if (Vector3.Distance (gameObject.transform.position, transfArray [count].position) < 0.2f) {
if (count == size) {
//Destroy (transfArray [count].gameObject);
//Дамаг таверу.
} else
count++;
}
}
}
Решено.