А еще у меня есть код для врага, преследующего игрока:
Код: Выделить всё
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class EnemyAI : MonoBehaviour
{
public GameObject player;
public float speed;
private float distance;
public string playerTag = "Player";
internal Transform playerObject;
// Start is called before the first frame update
void Start()
{
playerObject = GameObject.FindGameObjectWithTag(playerTag);
}
// Update is called once per frame
void Update()
{
distance = Vector2.Distance(transform.position, player.transform.position);
Vector2 direction = player.transform.position - transform.position;
transform.position = Vector2.MoveTowards(this.transform.position, player.transform.position, speed * Time.deltaTime);
}
Изменить: я также забыл сказать, что когда я сохраняю этот скрипт, я получаю ошибку: Assets\scripts \EnemyAI.cs(16,24): ошибка CS0029: невозможно неявно преобразовать тип UnityEngine.GameObject в UnityEngine.Transform, и я не уверен, как это исправить или влияет ли это на то, что я пытаюсь сделать .
Редактирование 2: я работал над другими частями игры и понял, что мне просто нужно прикрепить к сценарию состояние здоровья игрока, но мой игрок начинает с другой сцены, а затем перемещается. в сцену 2.
Подробнее здесь: https://stackoverflow.com/questions/787 ... -the-scene