Buenas tardes, llevo dos dias rompiendome la cabeza de este problema, veran;
Tengo un enemigo que me persigue a distgancia x me ataca a distancia x...eso va perfecto, a la hora de activar un simple canvas que es una imagen de sangre en la pantalla solo lo activa el primer enemigo los demas pasan de activar nada.
Creo que el problema puede ser en el transform(ahora lo vereis en el script), lo mismo me pasa al activar audios etc solo uno lo hace los demas aunque aga prefab no funciona.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;
public class enemigoataca2 : MonoBehaviour
{
public Transform player;
public float velocidadenemigo;
public float distance;
public AudioSource pega;
public AudioSource camina;
public AudioSource espadahit;
void Start()
{
player = GameObject.FindGameObjectWithTag("player").transform;
pega.enabled = false;
camina.enabled = false;
espadahit.enabled = false;
}
void Update()
{
distance = Vector3.Distance(transform.position, player.position);
if (distance <= 30)
{
camina.enabled = true;
pega.enabled = false;
GetComponent<Animation>().CrossFade("Walk");
GetComponent<walkmesh2>().enabled = false;
GetComponent<UnityEngine.AI.NavMeshAgent>().SetDestination(player.transform.position);
}
if (distance <= 3)///AQUI DEBERIA ACTIVAR EL CANVAS SANGRE/AUDIO LO QUE SEA
{
GetComponent<Animation>().CrossFade("2H_skeleton_specal_attack_A");
ManagerScript.manager.Vida -= 5f * Time.deltaTime;
ManagerScript.manager.activasangre = true;
pega.enabled = true;
// player.GetComponent<Animation>().Play("Cover_sword_hit");
espadahit.enabled = true;
}
else
{
espadahit.enabled = false;
// player.GetComponent<Animation>().CrossFade("Run");
ManagerScript.manager.activasangre = false;
}
if (distance >= 25)
{
camina.enabled = false