Как сделать так, чтобы мой враг нацелился на игрока, который выходит на сцену?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как сделать так, чтобы мой враг нацелился на игрока, который выходит на сцену?

Сообщение Anonymous »

Итак, чтобы объяснить немного дальше, я хочу, чтобы враг из сцены 2 нацелился на игрока, который начинается в сцене 1. У меня уже есть сценарий для нанесения урона и сценарий ИИ для врага, чтобы преследовать игрока, но я не может сделать его нацеленным на игрока, потому что игрок начинает в другой сцене. Я попытался найти несколько видеороликов на YouTube, а также спросил некоторых из моих более опытных друзей-программистов.
А еще у меня есть код для врага, преследующего игрока:

Код: Выделить всё

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);
}
Итак, просматривая видео, я понял, как настроить таргетинг на игрока в той же сцене, и сделал это с помощью того же кода, что и выше. В Unity мне удалось перетащить плеер в раздел под кодом. Но мне казалось, что я не могу найти ничего о враге, который атакует игрока, который появляется на сцене позже. Возможно, я искал не в тех местах, но я потратил много времени на поиск.
Изменить: я также забыл сказать, что когда я сохраняю этот скрипт, я получаю ошибку: Assets\scripts \EnemyAI.cs(16,24): ошибка CS0029: невозможно неявно преобразовать тип UnityEngine.GameObject в UnityEngine.Transform, и я не уверен, как это исправить или влияет ли это на то, что я пытаюсь сделать .
Редактирование 2: я работал над другими частями игры и понял, что мне просто нужно прикрепить к сценарию состояние здоровья игрока, но мой игрок начинает с другой сцены, а затем перемещается. в сцену 2.

Подробнее здесь: https://stackoverflow.com/questions/787 ... -the-scene
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»