[Problema com c#] Inimigo segue o Player
4 participantes
Página 1 de 1
[Problema com c#] Inimigo segue o Player
Galera estou precisando de ajuda em c#, eu tenho um script que faz o inimigo seguir o player se estiver a certa distancia. só que quando ele ativa o destino do navMes. ele entra dentro do meu player...
gostaria que ele seguisse meu player , porem não entrasse dentro dele, queria que ele preservace ums 2 metro de seguranca, para que ele não entre dentro do meu player mais fique , o mais perto dele possível, pos o meu inimigo vai usar poder e ele precisa ter uma distancia do player para animação não ficar zuado.
aguardo resposta. obrigado.
gostaria que ele seguisse meu player , porem não entrasse dentro dele, queria que ele preservace ums 2 metro de seguranca, para que ele não entre dentro do meu player mais fique , o mais perto dele possível, pos o meu inimigo vai usar poder e ele precisa ter uma distancia do player para animação não ficar zuado.
- Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(NavMeshAgent))]
public class inimigosegplayer : MonoBehaviour {
private GameObject Player, Inimigos;
private NavMeshAgent naveMesh;
public float distancia, distanciaInimigo;
public bool Instancia, contar, playerPerto;
public Rigidbody Pedra;
public Transform posicao;
private float tempo;
public float distanciaparaseguir;
public float distanciapermitada = 2;
void Start (){
Instancia = false;
contar = false;
naveMesh = transform.GetComponent<NavMeshAgent> ();
Player = GameObject.FindWithTag ("Player");
Inimigos = GameObject.FindWithTag ("Fire");
playerPerto = false;
}
void Update (){
distancia = Vector3.Distance (Player.transform.position, transform.position);
distanciaInimigo = Vector3.Distance (Inimigos.transform.position, transform.position);
if (distancia <= distanciaparaseguir) {
if (distanciapermitada >= 0 && distanciapermitada <= 4){
naveMesh.destination = Player.transform.position;
playerPerto = true;
}
} else {
playerPerto = false;
}
if (Instancia == true && distancia <= distanciaparaseguir) {
Instantiate (Pedra, posicao.position, transform.rotation);
Instancia = false;
contar = true;
}
if (contar == true) {
tempo += Time.deltaTime;
}
if (tempo >= 2) {
tempo = 0;
Instancia = true;
}
if (distanciaInimigo >= 0 && playerPerto == false) {
//naveMesh.destination = Inimigos.transform.position;
}
if (Instancia == true && distanciaInimigo >= 0) {
Instantiate (Pedra, posicao.position, transform.rotation);
Instancia = false;
contar = true;
}
}
}
aguardo resposta. obrigado.
Re: [Problema com c#] Inimigo segue o Player
No NavMeshAgent tem um componente chamado (stopping distance) é só colocart a distancia que ele vai para do player.
rafaelllsd- ProgramadorMaster
- PONTOS : 5035
REPUTAÇÃO : 507
Idade : 23
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, MySQL.
Respeito as regras :
Re: [Problema com c#] Inimigo segue o Player
MUITO OBRIGADO rafaelllsd, tão simples e eu querendo tornar em algo tão difícil kk,rafaelllsd escreveu:No NavMeshAgent tem um componente chamado (stopping distance) é só colocart a distancia que ele vai para do player.
porem , agora ele fica na distancia que eu quero , só que ele olha sempre do lado inverso do player nunca para o player kkk.
vou tentar arrumar isso se eu não conseguir tento pedir ajudar aqui no forum, Obrigado mesmo
Re: [Problema com c#] Inimigo segue o Player
Eu uso esse código pro inimigo olhar para o player:
- Código:
Vector3 lookrotation = Player.transform.position - transform.position;
transform.rotation = Quaternion.Slerp(transform.rotation,Quaternion.LookRotation(lookrotation), 3*Time.deltaTime);
rafaelllsd- ProgramadorMaster
- PONTOS : 5035
REPUTAÇÃO : 507
Idade : 23
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, MySQL.
Respeito as regras :
Re: [Problema com c#] Inimigo segue o Player
Cara, se voce colocar um lookat pra ficar sempre olhando para o player, vai ficar zuado, porque por exemplo. Se o inimigo andar ao lado de algum objeto, ele vai ficar olhando pro player, enquanto se o lookAt estiver desativado, ele vai virar normalmente, como se estivesse andando.
Voce pode ativar o lookat quando o inimigo chegar proximo ao player.
Voce pode ativar o lookat quando o inimigo chegar proximo ao player.
Tópicos semelhantes
» [Duvida] Como Player Segue Objeto em 2D
» Inimigo apenas segue o player
» Inimigo segue o player mesmo morto!!!
» Player não segue a trajetória quando pula correndo
» Ajuda com scripts de inimigo e player'' interação de zumbi e player''
» Inimigo apenas segue o player
» Inimigo segue o player mesmo morto!!!
» Player não segue a trajetória quando pula correndo
» Ajuda com scripts de inimigo e player'' interação de zumbi e player''
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos