SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida Very Happy
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Tem Como eu Fazer uma Float com 2 Numeros após a virgula ?
Cálculo simples dando errado
NOVO ANDROID STUDIO COM PROBLEMA NO SDK
aVork - Física realista para veículos
Novo tema fórum - Votação
[DÚVIDA] erro no unity 2017 ao colocar scripts
Como criar uma conexão externa usando IP do host
Movimentação no Espaço como Jet Pack
como criar um slime? como fazer para uma mesh ficar mole e colidir com o chao(tipo slime)?
[TUTORIAL] UNITY 5 - Efeito submerso (underwater effect), distorção da água e gotas na tela
Como selecionar um único filho de um Gameobject?
[DEVLOG] Projeto - Pocket Girl Blade - Atualização
Numero de itens iguais em uma lista
[RESOLVIDO]Alguém tem alguma dica sobre NavMeshAgent
Problemas com o Unity
[Duvida] Qual o Aspect Ratio do celular.
[RESOLVIDO]Receber o nome do próprio objeto em uma string
Weslley GameDev
[DÚVIDA]Ajuda para como fazer esse script voltar a funcionar
Wheel joint 2d e problema com limite de velocidade
Como usar o Getfloat no audio mixer?
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
[Duvida] Collab Excedeu o Seu Limite : Como posso transferir o projeto entre a equipe?
Adaptação a Área de Desenvolvimento de Jogos
[DUVIDA] Sistema de diario/Livro de notas
[DÚVIDA](Multiplayer) Comando para non-Player object
é Possivel visualizar uma Variavel Estatica no Inspector ?
Physics2D para Physics?
Erro com lista
[ERRO UNITY] Unity 2017
PRECISO DE UM ANIMADOR
Erro com monodevelop
Como melhorar o desempenho mobile?
[DÚVIDA]Receber e setar texto em um objeto
[DÙVIDA]Problema ao criar build Android
[DÚVIDA]Como fazer um lerp de um determinado valor de maneira gradativa
[DÚVIDA]MULTIPLAYER Unet: Como sincronizar Variaveis(bool)
Novo jogo em desenvolvimento para android
[____ADMINISTRAÇÃO____] PRECISO DE AJUDA [DICA PARA SER AJUDADO]
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
Banco de Dados Cotação
[RESOLVIDO] O fórum é só para Unity?
[RESOLVIDO] Button perdendo a instancia
[RESOLVIDO]UNITY NAO REPRODUZ AUDIO, problema do pc ou da unity?
Atualização do meu jogo estilo Resident Evil 4 + link do APK
Reproduzir vídeos do youtube
Necessito de sua ajuda para uma ideia...
(ARQUIVO) Leia aqui como obter sucesso com seu jogo independente?
Duvida com script !
Criar LAN via bluetooth
Atributos Network UNET
[RESOLVIDO]Estou Usando FindGameObjectWithTag Porem....
[TUTORIAL] Mover/Empurrar Objetos, Caixote,etc
Script de Movimentação não funciona
[RESOLVIDO] SDK NÃO FUNCIONA NO WINDOWS 10
Novo jogo - Stackx
Simular tecla com um botao ou touch
Botoes da unity no android e destruir um objeto em qualquer lugar da cena com touch
Dúvida Netwoking
[____ADERIR A UMA CATEGORIA NO FÓRUM____]
Ajuda Com Admob
é Possivel Fazer uma FindTag usando um Text ao inves do GameObject ?
[RESOLVIDO] Animação com "Objetos"
[RESOLVIDO] Enemy IA e Portas
Formação de equipes - AK Vida Real
física de carro
Tutorial tempo em jogo
Duvida Blender
Programador Rodando o Sul
Como fazer uma loja em multiplayer?
Resolução do jogo mobile
Equipe Para Desenvolver Games Comigo
Como fazer uma IA sem Navmesh
NÃO CONSIGO ARRASTAR NADA DA ABA PROJECT PARA A ABA HIERARCHY OU SCENE '-'
[TUTORIAL] Mover, Girar e lançar objetos com o mouse ( estilo Amnesia )
Qual a diferença entre SmoothDamp e Lerp?
[TUTORIAL] Mover, girar e lançar objetos com o MOUSE (Unity 2017, atualizado)
Limitar velocidade no transform ou rigidbody?
Monodevelop
[Dúvida] ~~> É permitido colocar nomes reais de cidades em games?
Lerp não funciona direito com valores grandes
Como Posso Fazer um Time.DeltaTime com uma Int ?
[Duvida] Duvida Com script de mover em direção ao mouse.
Lights bugadas!!
- COMO CRIO UM CRONOMETRO COM O TEMPO DA VIDA REAL? -
Fazer com que a array classifique por distancia
Auto-Complete do Visual Studios
Ajuda com Rigidbody eixo Y mover constante
Background invisivel
Script Objeto Rotate
Jogo Android desenvolvido
Aprendendo a usar o scuptmode
Novo jogo sendo desenvolvido por mim! ( Simulador vida Real )
Equipe para desenvolver o ENDLESS WAR( FPS MULTIPLAYER)
phaton ou unity net work
Como fazer um sistema multiplayer?
[Servidores Experimentais] No Exit - Beta Aberto
Sistema de física e atrito para carro 2d
Problemas com Pitch
Hoje à(s) 9:33 am
Hoje à(s) 9:29 am
Hoje à(s) 8:58 am
Hoje à(s) 2:51 am
Hoje à(s) 1:59 am
Hoje à(s) 1:24 am
Hoje à(s) 1:15 am
Hoje à(s) 1:11 am
Hoje à(s) 1:05 am
Hoje à(s) 1:01 am
Ontem à(s) 9:46 pm
Ontem à(s) 9:08 pm
Ontem à(s) 8:10 pm
Ontem à(s) 8:00 pm
Ontem à(s) 7:42 pm
Ontem à(s) 7:25 pm
Ontem à(s) 7:13 pm
Ontem à(s) 7:09 pm
Ontem à(s) 5:09 pm
Ontem à(s) 5:04 pm
Ontem à(s) 5:03 pm
Ontem à(s) 4:58 pm
Ontem à(s) 4:53 pm
Ontem à(s) 4:26 pm
Ontem à(s) 4:10 pm
Ontem à(s) 4:10 pm
Ontem à(s) 4:05 pm
Ontem à(s) 4:03 pm
Ontem à(s) 3:46 pm
Ontem à(s) 3:23 pm
Ontem à(s) 3:20 pm
Ontem à(s) 3:05 pm
Ontem à(s) 3:04 pm
Ontem à(s) 1:28 pm
Ontem à(s) 1:09 pm
Ontem à(s) 12:36 pm
Ontem à(s) 12:23 pm
Ontem à(s) 11:25 am
Ontem à(s) 9:46 am
Ontem à(s) 9:45 am
Ontem à(s) 8:23 am
Ontem à(s) 8:11 am
Ontem à(s) 2:17 am
Ontem à(s) 2:14 am
Qua Jan 17, 2018 8:35 pm
Qua Jan 17, 2018 6:41 pm
Qua Jan 17, 2018 4:25 pm
Qua Jan 17, 2018 4:08 pm
Qua Jan 17, 2018 3:30 pm
Qua Jan 17, 2018 3:03 pm
Qua Jan 17, 2018 2:08 pm
Qua Jan 17, 2018 1:00 pm
Qua Jan 17, 2018 1:00 pm
Qua Jan 17, 2018 12:22 pm
Qua Jan 17, 2018 11:31 am
Qua Jan 17, 2018 10:40 am
Qua Jan 17, 2018 8:46 am
Ter Jan 16, 2018 11:17 pm
Ter Jan 16, 2018 11:04 pm
Ter Jan 16, 2018 10:45 pm
Ter Jan 16, 2018 9:31 pm
Ter Jan 16, 2018 8:50 pm
Ter Jan 16, 2018 8:16 pm
Ter Jan 16, 2018 8:08 pm
Ter Jan 16, 2018 8:07 pm
Ter Jan 16, 2018 4:38 pm
Ter Jan 16, 2018 1:19 pm
Ter Jan 16, 2018 12:00 pm
Ter Jan 16, 2018 11:00 am
Ter Jan 16, 2018 8:30 am
Seg Jan 15, 2018 11:55 pm
Seg Jan 15, 2018 10:34 pm
Seg Jan 15, 2018 8:11 pm
Seg Jan 15, 2018 6:55 pm
Seg Jan 15, 2018 6:53 pm
Seg Jan 15, 2018 6:48 pm
Seg Jan 15, 2018 6:36 pm
Seg Jan 15, 2018 5:40 pm
Seg Jan 15, 2018 5:35 pm
Seg Jan 15, 2018 5:12 pm
Seg Jan 15, 2018 5:05 pm
Seg Jan 15, 2018 4:46 pm
Seg Jan 15, 2018 3:55 pm
Seg Jan 15, 2018 3:45 pm
Seg Jan 15, 2018 3:34 pm
Seg Jan 15, 2018 3:17 pm
Seg Jan 15, 2018 3:04 pm
Seg Jan 15, 2018 2:35 pm
Seg Jan 15, 2018 2:31 pm
Seg Jan 15, 2018 2:03 pm
Seg Jan 15, 2018 12:51 pm
Seg Jan 15, 2018 12:48 pm
Seg Jan 15, 2018 12:28 pm
Dom Jan 14, 2018 10:48 pm
Dom Jan 14, 2018 9:30 pm
Dom Jan 14, 2018 8:54 pm
Dom Jan 14, 2018 8:35 pm
Dom Jan 14, 2018 6:26 pm
Dom Jan 14, 2018 4:07 pm
nicolasfive
Mosqueiro
dstaroski
recagonlei
Madness
recagonlei
recagonlei
MarcosSchultz
MarcosSchultz
MarcosSchultz
felipehobs1
Água Sem Hidrogênio
recagonlei
recagonlei
dstaroski
recagonlei
recagonlei
DuViDoSo
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
Raphaels
Gwiisk
recagonlei
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
Junim
MarcosSchultz
MarcosSchultz
MRX
YmKx
recagonlei
recagonlei
ÁguaMineral
dstaroski
dstaroski
Phph09
John Rambo
recagonlei
recagonlei
thiagotmi
natanael.olimpio
cody0033
cody0033
jasondavin
Água Sem Hidrogênio
jasondavin
recagonlei
dstaroski
Água Sem Hidrogênio
recagonlei
googolepton
Phph09
fabriciorsz34
recagonlei
recagonlei
Água Sem Hidrogênio
rafaelllsd
recagonlei
recagonlei
fabriciorsz34
Zack2
Callyde Jr
Zack2
heliab125
Phph09
João Marcos S. R.
cody0033
Callyde Jr
MarcosSchultz
MarcosSchultz
recagonlei
MarcosSchultz
Phph09
Phph09
ÁguaMineral
Daniel Pires da Silva
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
Callyde Jr
RonilddoRR
RW.
ÁguaMineral
pitercredd
recagonlei
rafaelllsd
Álefe Kauvyhtz
Álefe Kauvyhtz
recagonlei

[TUTORIAL] AI simples inimiga

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

TUTORIAL [TUTORIAL] AI simples inimiga

Mensagem por GloryGames em Ter Abr 25, 2017 9:47 am

Bom dia, hj venho trazer um script de AI simples do inimigo, mas inteligente.
O script estará um pouco explicado e será simples, mas quem estiver com duvidas pode dizer que eu erei responder.

Script Inimigo:
Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[RequireComponent(typeof(UnityEngine.AI.NavMeshAgent))]
public class Inimigo : MonoBehaviour {


        // crie um script com o nome Inimgio
        // meta este script no seu inimigo
        // crie uma nova tag com o nome "Inimigo"


 private GameObject player;
 private UnityEngine.AI.NavMeshAgent navMesh;
 private int vida = 100; //vida do inimigo
 private bool podeAtacar;


 void Awake(){
 transform.tag = "Inimigo"; //isto irá por a tag Inimigo no seu inimigo automaticamente
 }

 void Start () {
 player = GameObject.FindWithTag ("Player"); // irá procurar o seu player
 navMesh = GetComponent<UnityEngine.AI.NavMeshAgent> ();
 podeAtacar = true;

 }


 void Update (){
 navMesh.destination = player.transform.position; // o inimigo irá mover-se até a posição do inimigo
 if (Vector3.Distance (transform.position, player.transform.position) < 1.5f){ // se o inimigo estiver a menos de 1.5 do player ele era iniciar o Atacar
 Atacar();
 }
 if (Input.GetKey (KeyCode.C)) { //se o player estiver a menos de 2 do inimigo e clicar na tecla C o inimigo fica com menos 50 pontos de vida
 if (Vector3.Distance (transform.position, player.transform.position) < 2) {
 vida -= 50;
 }
 }

 if (vida <= 0) { // se a vida do inimigo for menor ou igual a 0 ele ira auto-destruir-se
 Destroy (gameObject);
 }
 

 }
 void Atacar(){ // isto é a void Atacar, quando iniciada o player sofre 20 pontos de dano
 if (podeAtacar == true) {
 StartCoroutine ("TempoDeAtaque");
 player.GetComponent<Jogador> ().vidaAtual -= 20; // aqui pode alterar o dano do personagem
 }
 }

 IEnumerator TempoDeAtaque(){ // isto é o tempo em que o inimigo espera entre cada ataque
 podeAtacar = false;
 yield return new WaitForSeconds (1); //nesta linha pode alterar o tempo
 podeAtacar = true;
 }

}


Script do Jogador 
Código:
using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;
using UnityEngine.UI;

public class Jogador : MonoBehaviour {

         // criar um script com o nome Jogador
        // colocar este script no seu jogador


 public float vidaAtual;

 void Awake(){
 transform.tag = "Player"; //isto irá por a tag Player no seu jogador
 }
 
 
 void Update () {
 if (vidaAtual <= 0) { //se a vida do seu Player ficar igual ou menor que 0 irá carregar a cena "Morte"
 SceneManager.LoadScene ("Morte");
 }
 }
 
}

Espero que tenham gostado.

GloryGames
Membro
Membro

Masculino PONTOS : 380
REPUTAÇÃO : 11
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] AI simples inimiga

Mensagem por GloryGames em Ter Abr 25, 2017 9:52 am

Esqueci de dizer que é preciso fazer o seguinte: 
Ir a navigation > Bake (botao superior) > Bake (botao inferior direito)

e acrescentar um novo componente no seu inimigo. Nav Mesh Agent

GloryGames
Membro
Membro

Masculino PONTOS : 380
REPUTAÇÃO : 11
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] AI simples inimiga

Mensagem por dstaroski em Ter Abr 25, 2017 9:53 am

GloryGames escreveu:Bom dia, hj venho trazer um script de AI simples do inimigo, mas inteligente.
O script estará um pouco explicado e será simples, mas quem estiver com duvidas pode dizer que eu erei responder.

Script Inimigo:
Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[RequireComponent(typeof(UnityEngine.AI.NavMeshAgent))]
public class Inimigo : MonoBehaviour {


        // crie um script com o nome Inimgio
        // meta este script no seu inimigo
        // crie uma nova tag com o nome "Inimigo"


 private GameObject player;
 private UnityEngine.AI.NavMeshAgent navMesh;
 private int vida = 100; //vida do inimigo
 private bool podeAtacar;


 void Awake(){
 transform.tag = "Inimigo"; //isto irá por a tag Inimigo no seu inimigo automaticamente
 }

 void Start () {
 player = GameObject.FindWithTag ("Player"); // irá procurar o seu player
 navMesh = GetComponent<UnityEngine.AI.NavMeshAgent> ();
 podeAtacar = true;

 }


 void Update (){
 navMesh.destination = player.transform.position; // o inimigo irá mover-se até a posição do inimigo
 if (Vector3.Distance (transform.position, player.transform.position) < 1.5f){ // se o inimigo estiver a menos de 1.5 do player ele era iniciar o Atacar
 Atacar();
 }
 if (Input.GetKey (KeyCode.C)) { //se o player estiver a menos de 2 do inimigo e clicar na tecla C o inimigo fica com menos 50 pontos de vida
 if (Vector3.Distance (transform.position, player.transform.position) < 2) {
 vida -= 50;
 }
 }

 if (vida <= 0) { // se a vida do inimigo for menor ou igual a 0 ele ira auto-destruir-se
 Destroy (gameObject);
 }
 

 }
 void Atacar(){ // isto é a void Atacar, quando iniciada o player sofre 20 pontos de dano
 if (podeAtacar == true) {
 StartCoroutine ("TempoDeAtaque");
 player.GetComponent<Jogador> ().vidaAtual -= 20; // aqui pode alterar o dano do personagem
 }
 }

 IEnumerator TempoDeAtaque(){ // isto é o tempo em que o inimigo espera entre cada ataque
 podeAtacar = false;
 yield return new WaitForSeconds (1); //nesta linha pode alterar o tempo
 podeAtacar = true;
 }

}


Script do Jogador 
Código:
using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;
using UnityEngine.UI;

public class Jogador : MonoBehaviour {

         // criar um script com o nome Jogador
        // colocar este script no seu jogador


 public float vidaAtual;

 void Awake(){
 transform.tag = "Player"; //isto irá por a tag Player no seu jogador
 }
 
 
 void Update () {
 if (vidaAtual <= 0) { //se a vida do seu Player ficar igual ou menor que 0 irá carregar a cena "Morte"
 SceneManager.LoadScene ("Morte");
 }
 }
 
}

Espero que tenham gostado.
Parabéns cara pela iniciativa!
avatar
dstaroski
Instrutor

Masculino PONTOS : 2565
REPUTAÇÃO : 630
Idade : 28
Áreas de atuação : Téc. Hardware e Redes, Programação C#, Daz3D and Gimp

Respeito as regras :

Ver perfil do usuário https://www.daz3d.com/gallery/users/1575361

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum