Player virar para o inimigo(Prefab)
2 participantes
Página 1 de 1
Player virar para o inimigo(Prefab)
Estou enfrentando um problema no meu jogo.
Estou tentando fazer o player identificar constantemente o inimigo mais próximo, consegui fazer ele descobrir o inimigo mais próximo quando inicia o jogo, porem quando nasce novos inimigos ele para de identificar o mais próximo, gostaria de saber como fazer o player sempre ficar identificando o mais próximo.
Código: Player
Estou tentando fazer o player identificar constantemente o inimigo mais próximo, consegui fazer ele descobrir o inimigo mais próximo quando inicia o jogo, porem quando nasce novos inimigos ele para de identificar o mais próximo, gostaria de saber como fazer o player sempre ficar identificando o mais próximo.
Código: Player
- Código:
public GameObject[] Enemy;
public float[] dist;
public GameObject Player;
public GameObject Alvo;
public float distMax;
public float distMin;
public bool podeAtacar;
public Quaternion alvoRoda;
private SpawnManager spawnManager;
public float delay = 1f;
void Start()
{
podeAtacar = false;
Enemy = spawnManager.inimigoPrefab;
spawnManager = GameObject.Find("SpawnManager").GetComponent<[i]SpawnManager[/i]>();
Enemy = GameObject.FindGameObjectsWithTag("Enemy");
dist = new float[Enemy.Length];
}
// Update is called once per fram
void Update()
{
Ataque();
for(int i = 0; i < Enemy.Length; i++){ //pegando a menor posicao
if(i == 0){
distMax = dist[i];
distMin = dist[i];
}
if(dist[i] > distMax){
distMax = dist[i];
}
if(dist[i] < distMin){
distMin = dist[i];
Alvo = Enemy[i];
}
}
alvoRoda = Quaternion.LookRotation(Player.transform.position - Alvo.transform.position, Vector2.up);
Debug.Log("Atacando: " + alvoRoda);
}
TRONRUSH- Iniciante
- PONTOS : 255
REPUTAÇÃO : 0
Respeito as regras :
Re: Player virar para o inimigo(Prefab)
- Recomendo fazer uma List<Transform> posEnemys para guardar a posição de cada inimigo criado na cena.
- No método Update Verifique a posição do player (player.transform.position), em relação a posição de cada inimigo(posEnemys) no mapa.
- Para isso use o Vector3.Distance(player.transform.position, posEnemys.position).
>> Sobre a List, veja essa ótima explicação: https://www.schultzgames.com/t7990-aula-listas-list
>> Sobre o Vector3.Distance(a, b): Retorna a distância entre a e b. Ainda com dúvidas? veja essa explicação: https://www.schultzgames.com/t1492-tutorialcsharp-vector3-distance
- No método Update Verifique a posição do player (player.transform.position), em relação a posição de cada inimigo(posEnemys) no mapa.
- Para isso use o Vector3.Distance(player.transform.position, posEnemys.position).
>> Sobre a List, veja essa ótima explicação: https://www.schultzgames.com/t7990-aula-listas-list
>> Sobre o Vector3.Distance(a, b): Retorna a distância entre a e b. Ainda com dúvidas? veja essa explicação: https://www.schultzgames.com/t1492-tutorialcsharp-vector3-distance
Magnatah- Instrutor
- PONTOS : 3334
REPUTAÇÃO : 208
Idade : 24
Áreas de atuação : Dєรєиvσlvєdσя Wєb(Fяσит-єиd), Blєиdєя, υиiтy, C#, ρнρ є Jαvαรcяiρт.
Respeito as regras :
Tópicos semelhantes
» Alguém sabe fazer uma AI para o inimigo seguir o Player em um jogo Top Down
» [RESOLVIDO] Inimigo olhar para player.
» Como fazer o Player olhar para o Inimigo?
» ajuda com script de inimigo para fazer com que ele só ataque quando ver o player
» Ajuda com scripts de inimigo e player'' interação de zumbi e player''
» [RESOLVIDO] Inimigo olhar para player.
» Como fazer o Player olhar para o Inimigo?
» ajuda com script de inimigo para fazer com que ele só ataque quando ver o player
» 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