AI INIMIGOS 2D
2 participantes
Página 1 de 1
AI INIMIGOS 2D
//
- Código:
//O INIMIGO DEVERA ATIRAR PROJETEIS E A VIDA DELE DEPENDE DE QUANTAS VESES EU COLIDIR COM ELE TIPO
ESSE VIDEO...
cafezinho71- Avançado
- PONTOS : 1629
REPUTAÇÃO : 5
Áreas de atuação : unity c# e musica
Respeito as regras :
Re: AI INIMIGOS 2D
Qual o tipo do inimigo ? é um humanoide? um objeto ? etc.
Existe varias forma de se fazer isso , creio que a mais simples seria você um usar um "radar" animado com um Colíder, que quando este radar passar pelo seu player ele detecte com um OnTrigger, ou OnCollision e atire.
EXEMPLO.
A questão da vida, use um uma logica de OnCollision, que se ouve colisão entre seu player e seu inimigo, a variavel vida recebe -dano ;
EXEMPLO.
Existe varias forma de se fazer isso , creio que a mais simples seria você um usar um "radar" animado com um Colíder, que quando este radar passar pelo seu player ele detecte com um OnTrigger, ou OnCollision e atire.
EXEMPLO.
A questão da vida, use um uma logica de OnCollision, que se ouve colisão entre seu player e seu inimigo, a variavel vida recebe -dano ;
EXEMPLO.
- Código:
private void OnCollisionEnter2D(Collision collision)
{
if (CompareTag("player"))
{
vida -= dano;
}
}
MatheusEleodoro- Membro
- PONTOS : 2462
REPUTAÇÃO : 7
Áreas de atuação : Cientista da Computação. Unity, C#,C,C++,
Java, Dev.Android
Respeito as regras :
Re: AI INIMIGOS 2D
eu quero que ele atire projeteis e quando eu colidir com ele 2x eu destruo ele
pfv me ajuda presciso terminar sexta-feira
pfv me ajuda presciso terminar sexta-feira
cafezinho71- Avançado
- PONTOS : 1629
REPUTAÇÃO : 5
Áreas de atuação : unity c# e musica
Respeito as regras :
Re: AI INIMIGOS 2D
Ajudo. basicamente vc terá que criar uma tag no seu player, e uma tag para o seu inimigo.
ira acionar um Collider nele, NÃO MARCAR A OPÇÃO DE TRIGGER.
No script do inimigo crie uma variável inteira para ser o contador.
Adicione aos seu player e o seu Inimigo um Rigidibody, e faça o seguinte script.
Agora seu inimiga será destruído, sempre que colidir 2x com você.
Para fazer ele atirar em você a logica é a mesma, porém ao invés de Destroy(gameObject), você ira colocar o código para disparar.
e na IA do inimigo terá que programar como quer que ele dispare. se será de tempo em tempo , constantemente, ou de alguma outra forma
ira acionar um Collider nele, NÃO MARCAR A OPÇÃO DE TRIGGER.
No script do inimigo crie uma variável inteira para ser o contador.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class teste : MonoBehaviour
{
private int cont;
void Start()
{
cont = 0;
}
Adicione aos seu player e o seu Inimigo um Rigidibody, e faça o seguinte script.
- Código:
private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.gameObject.CompareTag("player"))
{
cont++; // Se o Colisor detectar que colidiu com a tag player ele ira somar + 1 na veriavel cont
}
// quando cont for 2 o if ficara verdadeiro, e executará seu codigo para destruir, após isso ira zerar o cont
if (cont == 2)
{
Destroy(gameObject);
cont = 0;
}
}
Agora seu inimiga será destruído, sempre que colidir 2x com você.
Para fazer ele atirar em você a logica é a mesma, porém ao invés de Destroy(gameObject), você ira colocar o código para disparar.
e na IA do inimigo terá que programar como quer que ele dispare. se será de tempo em tempo , constantemente, ou de alguma outra forma
MatheusEleodoro- Membro
- PONTOS : 2462
REPUTAÇÃO : 7
Áreas de atuação : Cientista da Computação. Unity, C#,C,C++,
Java, Dev.Android
Respeito as regras :
Re: AI INIMIGOS 2D
Muito obrigado fico muitô agradecido ajudou bastante vou deixar para download o jogo quando estiver prontoMatheusEleodoro escreveu:Ajudo. basicamente vc terá que criar uma tag no seu player, e uma tag para o seu inimigo.
ira acionar um Collider nele, NÃO MARCAR A OPÇÃO DE TRIGGER.
No script do inimigo crie uma variável inteira para ser o contador.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class teste : MonoBehaviour
{
private int cont;
void Start()
{
cont = 0;
}
Adicione aos seu player e o seu Inimigo um Rigidibody, e faça o seguinte script.
- Código:
private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.gameObject.CompareTag("player"))
{
cont++; // Se o Colisor detectar que colidiu com a tag player ele ira somar + 1 na veriavel cont
}
// quando cont for 2 o if ficara verdadeiro, e executará seu codigo para destruir, após isso ira zerar o cont
if (cont == 2)
{
Destroy(gameObject);
cont = 0;
}
}
Agora seu inimiga será destruído, sempre que colidir 2x com você.
Para fazer ele atirar em você a logica é a mesma, porém ao invés de Destroy(gameObject), você ira colocar o código para disparar.
e na IA do inimigo terá que programar como quer que ele dispare. se será de tempo em tempo , constantemente, ou de alguma outra forma
cafezinho71- Avançado
- PONTOS : 1629
REPUTAÇÃO : 5
Áreas de atuação : unity c# e musica
Respeito as regras :
Tópicos semelhantes
» IA dos inimigos em 3° pessoa fps "Inimigos humanos em um FPS"
» Horda de inimigos
» Orientação de inimigos
» IA para multiplos inimigos
» Problemas com Inimigos
» Horda de inimigos
» Orientação de inimigos
» IA para multiplos inimigos
» Problemas com Inimigos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos