ajuda com script de inimigo para fazer com que ele só ataque quando ver o player
2 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
ajuda com script de inimigo para fazer com que ele só ataque quando ver o player
olá amigos belezera ???
bom criei esses dois scripts js para inimigo esta tudo funcionando perfeitamente , porem meu inimigo me ataca quando eu piso na tag enemy mas e eu queira que ele so me atacasse quando me visse e nao estou acertando fazer isso em js , será que aguem poderia me dar uma mão ae???
esse script vai dentro do enemigo
script que vai no player...
se quiserem podem ver o o jogo rodando no meu canal dai vcs terão uma noção melhor:
https://www.youtube.com/watch?v=wooab5YsKcw
bom criei esses dois scripts js para inimigo esta tudo funcionando perfeitamente , porem meu inimigo me ataca quando eu piso na tag enemy mas e eu queira que ele so me atacasse quando me visse e nao estou acertando fazer isso em js , será que aguem poderia me dar uma mão ae???
esse script vai dentro do enemigo
- Código:
#pragma strict
var Vida = 100;//vida enemigo
var anim : Animator;
var nav : NavMeshAgent;
var player : Transform;//poner objeto al que sigue el enemigo
var vidaPlayer : PlayerVida;//script vida del player
var ataque : int;//vida que saca el enemigo al player al atacar
var AtacBool : boolean;
var character : CharacterController;
var distancia : float;//distancia que hay entre el player y el enemigo
var muerte : int;
var S : boolean;
var sonidoataque : AudioClip;
var sonidoMuerte : AudioClip;
function Start () {
S=true;
muerte = Random.Range (1, 3);
character.enabled = true;
AtacBool = false;
}
function Update () {
//CALCULAR DISTANCIA
distancia = Vector3.Distance(transform.position, player.position);
//SEGUIR AL PLAYER
if(Vida >= 1){// si la vida del enemigo es mayor de 1, el enemigo seguira al player
nav.destination = player.position;
}
if(distancia > 3){// si distancia es mas grande de 3
nav.speed = 2;
anim.SetBool("ataque", false);
}
//ATAQUE
if(distancia < nav.stoppingDistance && AtacBool == false){
nav.speed = 0;
anim.SetBool("ataque", true);
Invoke("Ataque", 1.1);//tiempo que tarda en dar el golpe
AtacBool = true;
Invoke("AtaqueSonido",0.8);
}
//VIDA
if(Vida <=0){
nav.speed = 0;
Invoke("Muerto", 5);//tiempo que tarda en desaparecer una vez a llegado su vida a 0
character.enabled = false;
if(muerte == 1){
anim.SetBool("muerte1", true);
}
if(muerte == 2){
anim.SetBool("muerte2", true);
}
}
if (S==true && Vida <=0){
S=false;
GetComponent.<AudioSource>().PlayOneShot(sonidoMuerte);
}
}
function AtaqueSonido (){
GetComponent.<AudioSource>().PlayOneShot(sonidoataque);
}
function Muerto () {
//Destroy(gameObject); //Opcion1
gameObject.SetActive(false); //Opcion2
}
function Ataque () {
Invoke("AF", 1.5);
if(distancia <= 4 && AtacBool == true){
vidaPlayer.vida -= ataque;
}
}
function AF () {
AtacBool = false;
}
function FV (Dano : int) {
Vida -= Dano;
}
script que vai no player...
- Código:
#pragma strict
var vida : int; //vida del player
var S : boolean;
var sonidoMuerte1 : AudioClip;
var sonidoMuerte2 : AudioClip;
function Start () {
S = true;
}
function Update () {
if(vida <= 0){
http://Application.LoadLevel("GAME OVER");
http://SceneManager.LoadScene("NombreDelNivel");
}
if ( S == true && vida <=0){
S = false;
GetComponent.<AudioSource>().PlayOneShot(sonidoMuerte1);
GetComponent.<AudioSource>().PlayOneShot(sonidoMuerte2);
}
}
?
se quiserem podem ver o o jogo rodando no meu canal dai vcs terão uma noção melhor:
https://www.youtube.com/watch?v=wooab5YsKcw
bymaxbig- Membro
- PONTOS : 3265
REPUTAÇÃO : 5
Idade : 25
Respeito as regras :
Re: ajuda com script de inimigo para fazer com que ele só ataque quando ver o player
Saudações amigo
Isto pode te ajudar
Isto pode te ajudar
JohnRambo- Moderador
- PONTOS : 5173
REPUTAÇÃO : 661
Idade : 24
Áreas de atuação : Unity;
Programação;
Música e Sonorização;
Graduado em Análise e Desenvolvimento de Sistemas;
Respeito as regras :
Re: ajuda com script de inimigo para fazer com que ele só ataque quando ver o player
sim e bem interessante porem meus scripts são todos em js e inclusive as armas e etc teria como usar c# e Js ao mesmo tempo , pq no script de inimigo o player tem de ser chamado e assim do mesmo jeito os scripts de armas.
bymaxbig- Membro
- PONTOS : 3265
REPUTAÇÃO : 5
Idade : 25
Respeito as regras :
Re: ajuda com script de inimigo para fazer com que ele só ataque quando ver o player
Entendo amigo.
Porém a grande maioria dos membros deste forum usam C# para programar, eu mesmo sou um deles.
E mais fácil encontrar ajuda por aqui usando C#
Tem um site que converte JavaScript para C# caso queira dar uma olhada
http://www.m2h.nl/files/js_to_c.php
Porém a grande maioria dos membros deste forum usam C# para programar, eu mesmo sou um deles.
E mais fácil encontrar ajuda por aqui usando C#
Tem um site que converte JavaScript para C# caso queira dar uma olhada
http://www.m2h.nl/files/js_to_c.php
JohnRambo- Moderador
- PONTOS : 5173
REPUTAÇÃO : 661
Idade : 24
Áreas de atuação : Unity;
Programação;
Música e Sonorização;
Graduado em Análise e Desenvolvimento de Sistemas;
Respeito as regras :
Re: ajuda com script de inimigo para fazer com que ele só ataque quando ver o player
vlw amigo resolvi aki vlw
bymaxbig- Membro
- PONTOS : 3265
REPUTAÇÃO : 5
Idade : 25
Respeito as regras :
Tópicos semelhantes
» como fazer para o inimigo setar animação quando colidir com o player?
» [RESOLVIDO] Linkar Script do inimigo quando o player entrar no collider dele
» Unity2D - Como fazer a IA do inimigo patrulhar e quando chegar perto do player, seguir ele
» [RESOLVIDO] Ajuda com script para matar Inimigo no Jogo
» Alquem tem alguma ideia de como fazer o Player tipo a cabeça olhar para o seu inimigo?
» [RESOLVIDO] Linkar Script do inimigo quando o player entrar no collider dele
» Unity2D - Como fazer a IA do inimigo patrulhar e quando chegar perto do player, seguir ele
» [RESOLVIDO] Ajuda com script para matar Inimigo no Jogo
» Alquem tem alguma ideia de como fazer o Player tipo a cabeça olhar para o seu inimigo?
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos