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:
(Duvida) Camera Seguir Player...
[TUTORIAL] Como programar um VOLANTE para veículos
Foice gigante
[____TÓPICO LIVRE____] FALE O QUE QUISER
TOP SECRET - Programador iniciante com experiencia em 2D
Dúvida sobre multiplayer!
PARTICULAS PLAY/STOP
IA zumbie veloz de mais
INSTANCIAR PARTICULAS
ABRIR E FECHAR PORTA!
Fazer objeto preview andar de gridsize em gridsize
Rotaçao de um objeto e paralizaçao de seu "filho" na hierarquia(Unity 2D)
[TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)
Criação de uma mensagem notificação em objeto 3d no unity
Fazer a camera seguir o personagem porem quando ela chegar na parede ela pare de se movimenta
Tocar som ao andar.
Verificar se é a primeira vez que joga
COMO POSSO FAZER O INIMIGO MORRER COM TIRO?
Unity Microfone
OBJETO GIRAR QUANDO ARRASTAR O MOUSE
Instanciar objetos aonde mira
disolver/ desintegrar um objeto
BARRINHA PARA REBAIXAR O CARRO!
Chamar Metodo
Gerador de códigos
Duvida sobre patrulha aleatória
[TUTORIAL] Ligar e Desligar Lanterna
[TUTORIAL] ARMA NO UNITY 3D
SOM DO TIRO
Como usar uma animação de uma arma animada na Unity...
[Tutorial] Porta ativada por alavanca
[DUVIDA] "encostar" em um GameObject e Tomar Dano
MIRA PARA JOGO DE FPS ESTILO CSGO
Game Resistência
Parede ocas
Modificar uma barrinha!
[Quase Pronto] Survival Block. Testem e mandem os bugs pra mim.
[ME AJUDA] O player não se movimenta...
SIRENE ESTILO POLÍCIA MILITAR
Movimentaçao player
Cena Loading para carregar proximo Level
SITE MODELOS 3D PARA USO COMERCIAL
Home Simulator 2017 (Estilo The Sims em 1ª Pessoa) (Download Grátis)
MUDAR FLOAT NO FIM DE UMA ANIMAÇÃO
RagDoll + Download Free -- feito por um gringo
[TUTORIAL] Criar Analógico Virtual UI Para Mobile.
[AJUDA] Cronometro
[PEDIDO] Designers ou Entendedores (Capa,Menu e ToolTip) 3 Imagens
[RESOLVIDO] Publicando Apk Parte 2
[TUTORIAL] IA Simples
[TUTORIAL] Ajustar o Brilho do LensFlare de Acordo com a Distância
CONTROLE ARCADE PARA JOGO DE CORRIDA
[TUTORIAL] IA Simples Parte 2 (Atirar)
[DEMO] Survival Block
Aprimoramento IA Inimiga
Batalha de Canhão
[RESOLVIDO] Camera Collider
Todos os inimigos morrem
Canal de tutoriais android
Area Para modeladores
Inimigo ao seguir flutua [ajuda]
[TUTORIAL] Sistema de tiro com RAYCAST (várias armas, mira laser, munição, dano, etc, etc)
Demo de jogo para testarem...
[TUTORIAL] Fazer um VOLANTE com UI, para Android
[DUVIDA] Como destruir um GameObject (cubo etc...) sem destruir seus "afilhados"
[Duvida] Como fazer uma luz se desativar ao ficar longe dela
[TUTORIAL] Inteligência artificial, inimigo e AIPoints
GRAFICO BUGADO [MOBILE]
Duvida sobre array de gameobject
ERRO NO APK
ANIMAÇÃO
sincronizar um Variável String multiplayer
DUVIDAS VARIADAS
Publicando Apk na PlayStore
Curar vida ao coletar itens
(Dúvida) Rotacionar roda
Sistema de tráfego
ObjetoCair
Existe alguma forma de fazer multiplayer por lan ou por bluethooth?
Duvida Script
converter para C#
Animação de movimento
Modelos 3D para uso gratuito ou comercial
Ajuda com jogos em flash
[RESOLVIDO] Dano No Player Ajuda erro
Como fazer parar de seguir em uma distancia determinada
Meus modelos 3D em fase de experimento
Lampião Vs Zombies - FORMAÇÃO DE EQUIPE - Jogo 2D
Criando Inteligencia Artificial Para BOSS.
Problema Com Menu Inicial !!
Tutorial rpg?
Criar um objeto preso em apenas um lado
Inventario equipando roupas - Leia mas para saber
Animação não esta ativando na hora do pulo
COMO POSSO FAZER UM MULTIPLAYER?
Menu principal não funciona no mobile
tenho que alterar os scripts para transfomar um game para Android????
Movimentação, sem Rigidbody
dash estilo megaman x, suavizar
Hoje à(s) 5:11 pm
Hoje à(s) 4:42 pm
Hoje à(s) 4:03 pm
Hoje à(s) 2:36 pm
Hoje à(s) 1:58 pm
Hoje à(s) 1:34 pm
Hoje à(s) 1:13 pm
Hoje à(s) 1:12 pm
Hoje à(s) 12:14 pm
Hoje à(s) 10:43 am
Hoje à(s) 4:01 am
Hoje à(s) 3:20 am
Hoje à(s) 1:37 am
Hoje à(s) 12:53 am
Hoje à(s) 12:52 am
Hoje à(s) 12:49 am
Hoje à(s) 12:46 am
Hoje à(s) 12:45 am
Hoje à(s) 12:34 am
Hoje à(s) 12:30 am
Hoje à(s) 12:22 am
Hoje à(s) 12:20 am
Hoje à(s) 12:15 am
Hoje à(s) 12:05 am
Ontem à(s) 11:59 pm
Ontem à(s) 11:58 pm
Ontem à(s) 8:59 pm
Ontem à(s) 6:50 pm
Ontem à(s) 3:37 pm
Ontem à(s) 1:51 am
Ontem à(s) 1:31 am
Ontem à(s) 12:31 am
Sex Mar 24, 2017 8:54 pm
Sex Mar 24, 2017 8:05 pm
Sex Mar 24, 2017 7:43 pm
Sex Mar 24, 2017 7:18 pm
Sex Mar 24, 2017 6:52 pm
Sex Mar 24, 2017 6:48 pm
Sex Mar 24, 2017 3:46 pm
Sex Mar 24, 2017 1:50 pm
Sex Mar 24, 2017 12:29 pm
Sex Mar 24, 2017 10:05 am
Qui Mar 23, 2017 10:13 pm
Qui Mar 23, 2017 6:55 pm
Qui Mar 23, 2017 4:50 pm
Qui Mar 23, 2017 4:38 pm
Qui Mar 23, 2017 4:33 pm
Qui Mar 23, 2017 12:46 pm
Qui Mar 23, 2017 8:56 am
Qua Mar 22, 2017 7:47 pm
Qua Mar 22, 2017 7:35 pm
Qua Mar 22, 2017 7:30 pm
Qua Mar 22, 2017 3:28 pm
Ter Mar 21, 2017 11:50 pm
Ter Mar 21, 2017 10:14 pm
Ter Mar 21, 2017 7:22 pm
Ter Mar 21, 2017 6:08 pm
Ter Mar 21, 2017 5:00 pm
Ter Mar 21, 2017 3:22 pm
Ter Mar 21, 2017 3:08 pm
Ter Mar 21, 2017 2:13 pm
Ter Mar 21, 2017 10:53 am
Ter Mar 21, 2017 10:13 am
Ter Mar 21, 2017 12:26 am
Ter Mar 21, 2017 12:10 am
Ter Mar 21, 2017 12:09 am
Ter Mar 21, 2017 12:05 am
Ter Mar 21, 2017 12:02 am
Seg Mar 20, 2017 11:58 pm
Seg Mar 20, 2017 11:55 pm
Seg Mar 20, 2017 9:10 pm
Seg Mar 20, 2017 7:57 pm
Seg Mar 20, 2017 6:41 pm
Seg Mar 20, 2017 4:31 pm
Seg Mar 20, 2017 8:10 am
Dom Mar 19, 2017 11:32 pm
Dom Mar 19, 2017 8:50 pm
Dom Mar 19, 2017 8:20 pm
Dom Mar 19, 2017 12:06 pm
Sab Mar 18, 2017 10:31 pm
Sab Mar 18, 2017 10:01 pm
Sab Mar 18, 2017 8:26 pm
Sab Mar 18, 2017 8:06 pm
Sab Mar 18, 2017 6:53 pm
Sab Mar 18, 2017 5:31 pm
Sab Mar 18, 2017 9:41 am
Sab Mar 18, 2017 7:23 am
Sex Mar 17, 2017 10:02 pm
Sex Mar 17, 2017 3:21 pm
Sex Mar 17, 2017 12:42 pm
Sex Mar 17, 2017 10:47 am
Qui Mar 16, 2017 11:16 pm
Qui Mar 16, 2017 9:33 pm
Qui Mar 16, 2017 9:32 pm
Qui Mar 16, 2017 9:28 pm
Qui Mar 16, 2017 9:18 pm
Qui Mar 16, 2017 9:16 pm
Qui Mar 16, 2017 9:09 pm
Qui Mar 16, 2017 9:08 pm
mafipt
MarcosSchultz
Mic4el
Mic4el
masterjohn12
artplayer
Junim
Junim
Junim
Gabriel César O
hackernew404
niao
Atiradogamer
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
wender
MarcosSchultz
MarcosSchultz
MarcosSchultz
MateusWTP
Gabriel César O
Gabriel César O
Sheyk
PauloFR
wender
Gabriel César O
Weverton Borges da Silva
maikonluis
HeF Software
Junim
Junim
wender
bravoent
Marc7
Callyde Jr
hen000
rafaelllsd
MateusWTP
Gabriel César O
Gabriel César O
Madness
Paizudo
Gabriel César O
AnderGames
Gabriel César O
Matrirxp
rafaelllsd
Matrirxp
AndyShow
ffabim
rafaelllsd
MikaelSteam
PauloFR
bravoent
DuViDoSo34
Édipo
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
lucasfera15
Khilua
PauloFR
Paizudo
willtuck
rafaelllsd
rafaelllsd
IanLuan
John Rambo
kalielson
willtuck
MikaelSteam
joabr
Luiz Mauro TCC
bravoent
AndyShow
joabr
BatataName
Callyde Jr
John Rambo
Callyde Jr
IanLuan
MarcosSchultz
Junim
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz

Como usar o OnBecomeVisible?

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

DÚVIDA Como usar o OnBecomeVisible?

Mensagem por BananaSmith em Ter Ago 30, 2016 7:47 pm

Pessoal,

Criei um rascunho de IA bem básica que tem seus movimentos e que atira na direção do jogador. Mas o problema é que, independente de estar aparecendo ou não, o inimigo sempre vai atirar na direção do jogador. Tentei usar esse recurso para fazer o inimigo atirar apenas quando a câmera visualizar ele, mas não deu muito certo. O script que vou postar é da arma, quero que ela apenas atire se entrar no campo de visão da câmera. Qual a maneira correta de aplicar o OnBecomeVisible nesse script? 

Obs:. Se encontrarem qualquer erro, ou souberem de uma maneira mais simples de escrever meu script, me avisem Very Happy

Código:
using UnityEngine;
using System.Collections;

public class OctopusGun : MonoBehaviour {

 private Transform player;

 public Transform Weapon;
 public GameObject bullet;
 public float fireRate;
 private float currentTime;
 private bool canFire = true;

 void Start () {
 player = GameObject.FindWithTag("Player").transform;
 }

 void Update () {

 Vector3 dir = player.position - transform.position;
 float angle = Mathf.Atan2(dir.y,dir.x) * Mathf.Rad2Deg;
 transform.rotation = Quaternion.AngleAxis(angle, Vector3.forward);
 
 if (canFire == false) {
 currentTime += Time.deltaTime;
 if (currentTime > fireRate) {
 currentTime = 0;
 canFire = true;
 }
 }

 if (canFire) {
 Instantiate(bullet, Weapon.position, Weapon.rotation);
 canFire = false;
 }
 }
}
avatar
BananaSmith
Membro
Membro

PONTOS : 614
REPUTAÇÃO : 2
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como usar o OnBecomeVisible?

Mensagem por MarcosSchultz em Ter Ago 30, 2016 11:51 pm

Ué, mas cade a void OnBecameVisible nesse script?

Outra coisa, tenha em mente que esta void afeta todas as cameras do editor, inclusive a do próprio editor, então é necessário testar em "maximize on play"
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8123
REPUTAÇÃO : 1142
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como usar o OnBecomeVisible?

Mensagem por BananaSmith em Qua Ago 31, 2016 10:49 pm

MarcosSchultz escreveu:Ué, mas cade a void OnBecameVisible nesse script?

Outra coisa, tenha em mente que esta void afeta todas as cameras do editor, inclusive a do próprio editor, então é necessário testar em "maximize on play"

Funcionou! Não sabia que a câmera do editor influenciava nisso.
Porém apareceu outro problema. Quando o inimigo aparece na câmera, ele só atira uma vez. Tentei corrigir isso, mas não consegui.
Alguma sugestão?
avatar
BananaSmith
Membro
Membro

PONTOS : 614
REPUTAÇÃO : 2
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como usar o OnBecomeVisible?

Mensagem por MarcosSchultz em Qui Set 01, 2016 1:54 am

Tem como mandar o script todo com a parte do OnBecameVisible e tudo mais? Você pode ficar chamando uma void caso uma variável seja verdadeira por exemplo, eh bastante simples. posso ajeitar para você, mas preciso do script.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8123
REPUTAÇÃO : 1142
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como usar o OnBecomeVisible?

Mensagem por BananaSmith em Qui Set 01, 2016 1:10 pm

Beleza! Aqui está:

Código:
using UnityEngine;
using System.Collections;

public class OctopusGun : MonoBehaviour {

 private Transform player;

 public Transform Weapon;
 public GameObject bullet;
 public float fireRate;
 private float currentTime;
 private bool canFire = true;

 void Start () {
 player = GameObject.FindWithTag("Player").transform;
 }

 void Update () {
 
 }

 void OnBecameVisible () {

 Vector3 dir = player.position - transform.position;
 float angle = Mathf.Atan2(dir.y,dir.x) * Mathf.Rad2Deg;
 transform.rotation = Quaternion.AngleAxis(angle, Vector3.forward);

 if (canFire == false) {
 currentTime += Time.deltaTime;
 if (currentTime > fireRate) {
 currentTime = 0;
 canFire = true;
 }
 }

 if (canFire) {
 Instantiate(bullet, Weapon.position, Weapon.rotation);
 canFire = false;
 }
 }
}


Obrigado Very Happy
avatar
BananaSmith
Membro
Membro

PONTOS : 614
REPUTAÇÃO : 2
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como usar o OnBecomeVisible?

Mensagem por Manawydan em Qui Set 01, 2016 1:23 pm

Voce deveria usar o cronometro no Update invez do OnBecameVisible, teste o seguinte nao testei e fiz pelo notepad entao malz se tiver erros:
Código:
using UnityEngine;
using System.Collections;

public class OctopusGun : MonoBehaviour {

 private Transform player;

 public Transform Weapon;
 public GameObject bullet;
 public float fireRate;
 private float currentTime;
 private bool canFire = true;
 
 private bool isVisible = true;

 void Start () {
 player = GameObject.FindWithTag("Player").transform;
 }

 void Update () {
    if(!isVisible)return;
   
    Vector3 dir = player.position - transform.position;
    float angle = Mathf.Atan2(dir.y,dir.x) * Mathf.Rad2Deg;
    transform.rotation = Quaternion.AngleAxis(angle, Vector3.forward);

 
   if (canFire == false) {
      currentTime += Time.deltaTime;
   if (currentTime > fireRate) {
      currentTime = 0;
      canFire = true;
      }
   }
   if (canFire) {
      Instantiate(bullet, Weapon.position, Weapon.rotation);
      canFire = false;
   }
 }

 void OnBecameVisible () {
    isVisible = true;
  }
   
void OnBecameInvisible () {
    isVisible = false;
  }
}
avatar
Manawydan
Moderador

PONTOS : 685
REPUTAÇÃO : 118
Idade : 20
Respeito as regras :

Ver perfil do usuário https://wad.ojooo.com/register.php?ref=ManawydanBr

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como usar o OnBecomeVisible?

Mensagem por BananaSmith em Qui Set 01, 2016 7:47 pm

Manawydan escreveu:Voce deveria usar o cronometro no Update invez do OnBecameVisible, teste o seguinte nao testei e fiz pelo notepad entao malz se tiver erros:
Código:
using UnityEngine;
using System.Collections;

public class OctopusGun : MonoBehaviour {

 private Transform player;

 public Transform Weapon;
 public GameObject bullet;
 public float fireRate;
 private float currentTime;
 private bool canFire = true;
 
 private bool isVisible = true;

 void Start () {
 player = GameObject.FindWithTag("Player").transform;
 }

 void Update () {
 if(!isVisible)return;
 
 Vector3 dir = player.position - transform.position;
 float angle = Mathf.Atan2(dir.y,dir.x) * Mathf.Rad2Deg;
 transform.rotation = Quaternion.AngleAxis(angle, Vector3.forward);

 
 if (canFire == false) {
 currentTime += Time.deltaTime;
 if (currentTime > fireRate) {
 currentTime = 0;
 canFire = true;
 }
 }
 if (canFire) {
 Instantiate(bullet, Weapon.position, Weapon.rotation);
 canFire = false;
 }
 }

 void OnBecameVisible () {
 isVisible = true;
  }
 
void OnBecameInvisible () {
 isVisible = false;
  }
}
Não deu certo não. Eles ainda estão atirando sem ser vistos pela câmera. Nunca usei o "return". Nessas alterações, o que exatamente deveria acontecer?
avatar
BananaSmith
Membro
Membro

PONTOS : 614
REPUTAÇÃO : 2
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como usar o OnBecomeVisible?

Mensagem por weslleyFx em Qui Set 01, 2016 11:04 pm

só lembrando que o OnBecameVisible também e chamado pela camera do editor
avatar
weslleyFx
Moderador

Masculino PONTOS : 2261
REPUTAÇÃO : 496
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

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