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:
Como faço para importar um asset de dentro da unity?
Como dar save e load em um objeto instanciado?
MANTER TELA DO CELULAR LIGADA
Tirar Fotos no Unity 5 FPS
Como não destruir um objeto depois de chamar um cena.
Tem como controlar a posição de uma particula?
Ajuda com scripts de inimigo e player'' interação de zumbi e player''
Unity Banco de Dados
como fazer o personagem rolar em 2D
como faço para transformar uma list em Array?
como fazer uma objeto se mover sozinho?
Como carregar imagens da pasta ( Arquivos e não Sprites ) via script.
[DÚVIDA] Como faço pra importar texturas do PC para o jogo in-game?
[DUVIDA] Verificar se um texto é um email
Como Detectar toques e destruir objetos no jogo
Duvida sobre o Unet
[RESOLVIDO] Camera FPS atravessa paredes
Baixos Brasil - Jogo de Carro Brasileiro!
PC Gamer!
Como acessar o Emission do Material e mudar a cor via script
Como carregar a cena mais rápido, ao apertar um botão ???
Trocando a texture do terreno com script
Alguem Conhece algum jogo famoso desenvolvido no Photon?
visualizador de ritmo
[SUPER ATUALIZAÇÃO] - Android - Night Hunter RPG, Faça um teste e avalie! Alpha #5
Curso de unity presencial
Adicionar marcador de Tempo no jogo
Preciso de Designer/Artista Para Card Game 2D
(Dúvida) Photon - Slot de salas criadas.
BUG COM NAVMESH Alguem Sabe Arrumar?
ERRO SCRIPT
[TUTORIAL] Spawn de objetos aleatorios em lugares aleatorios
ferr2D vale a pena?
Itemlist
Teste de jogo multiplayer ILHAS
Ilumição
[Dúvida] Como fazer um corpo rígido receber velocidade em direção ao mouse.
(Animator)Voltar a um estado de animação mais nao executar a mesma
Modelagem Uvm
Precisamos de modeladores
Rigidbody2D AddForce - Como adicionar uma força oneshot.
SCRIPT TIRO - UNITY 3d
duvida
Frameworks/tutoriais para jogo 2D?
[DEVLOG] Projeto - Girl Blade (download Pré-Alpha)
Mesmo material mas objeto mais claro
✖ Projeto HOSPICE Horror Game !! ✖
Machado PBR | 3D Axe with PBR textures.
Em breve Ilhas Multiplayer, sobrevivencia PVP E PVM
Text multiplayer
[TUTORIAL] Avião Script
Colocar Gifs em uma UI Unity 5?
Como faço para a musica continuar tocando quando muda de cena?
[TUTORIAL] Luz Principal,Luz de Freio,Piscas para Carro,Moto,Caminhão,Ônibus,Etc...
como posso colocar tempo em qualquer script?
SCRIPT ISOMETRICO PARA ROTACIONAR O PLAYER COM MOUSE
MEU JOGO DE TERROR EM DESENVOLVIMENTO E BLOGGUER
Alguém pode fazer um rig pra mão do meu personagem?
Verificar quantos objetos tem a seguinte tag na scena
the ŞỮŘVƗVΔŁ ƗŞŁΔŇĐ [Lançamento]
Time
Grave no Som da Unity!
ESSE EO MEU JOGO QUE EU ESTOU DESENVOLVENDO (VERSAO ALPHA)
Assesar Script De Outra Script
R7 - GOOH (resident evil 7)
Formação de equipa para o Jogo Until the last
Suspensão carro com raycast
como criar um botao dentro do if() (em C# pq quero padronizar tudo na mesma linguagem)
Arquivos de Expanssão OBB
Formação de equipe para jogo estilo Rust/DayZ
[DUVIDA]como girar sprite somente no eixo X em direção do mouse
GRAVIDADE não é compatível com Camera.main.ScreenToViewportPoint ?
Recrutamento para jogo de sobrevivencia estilo DayZ/Rust/H1Z1
-[SCRIPT DE POSIÇÕES ]-
[Duvida] Unity5 - Physics2D.Raycast não obedece distância máxima.
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
como posso fazer sons dos passos do inimigo
Unity - Car engine sound - Primeiro teste
Dúvida sobre particulas
[RESOLVIDO] Executar animação após um X segundos
Como indentificar que estou escrevendo [Unity.UI inputField]
[RESOLVIDO] Blender - Mesh com ossos bugados
[RESOLVIDO] OntriggerEnter Bugado
[RESOLVIDO] Problema com o Reimport e atualização do modelo
Como fazer o raycast ignorar a primeira colisao?
[RESOLVIDO] Animações no script
Transição de Cores Entre Cenas!
Sistema de corrida
Terreno procedural com blocos para baixo
alguem poderia me ajudar??
[TUTORIAL] AI Enemy 2.0 + animações ( Jogos de terror )
alguem sabe um sistema/ideia/tutorial de nicknames/indentificaçao para NETWORK local???
Jogo na Play Store e atualmente tem 40 downloads.
Translate.rotate ( 0, 0, Erro )
[Duvida] Time.TimeScale em jogo multiplayer
Aplicativo Reseta o Banco de Dados - Sqlite
7 erros no script conectar
Audio Player C#
Divulgaçao de Battle of Worlds
Hoje à(s) 20:26
Hoje à(s) 20:11
Hoje à(s) 20:00
Hoje à(s) 19:45
Hoje à(s) 19:27
Hoje à(s) 19:14
Hoje à(s) 14:40
Hoje à(s) 12:49
Hoje à(s) 12:21
Hoje à(s) 10:24
Hoje à(s) 6:03
Ontem à(s) 23:43
Ontem à(s) 23:33
Ontem à(s) 16:01
Ontem à(s) 14:15
Ontem à(s) 13:45
Ontem à(s) 10:38
Qua 18 Out - 22:54
Qua 18 Out - 22:28
Qua 18 Out - 21:28
Qua 18 Out - 21:13
Qua 18 Out - 16:10
Qua 18 Out - 14:21
Qua 18 Out - 14:18
Qua 18 Out - 13:47
Qua 18 Out - 12:56
Qua 18 Out - 12:10
Qua 18 Out - 11:10
Qua 18 Out - 2:08
Ter 17 Out - 23:29
Ter 17 Out - 20:57
Ter 17 Out - 20:42
Ter 17 Out - 20:36
Ter 17 Out - 18:04
Ter 17 Out - 16:52
Ter 17 Out - 16:33
Ter 17 Out - 15:44
Ter 17 Out - 14:42
Ter 17 Out - 14:39
Ter 17 Out - 13:13
Ter 17 Out - 11:16
Ter 17 Out - 10:37
Ter 17 Out - 8:58
Ter 17 Out - 8:27
Ter 17 Out - 5:10
Ter 17 Out - 0:53
Seg 16 Out - 20:17
Seg 16 Out - 19:06
Seg 16 Out - 16:27
Seg 16 Out - 15:26
Seg 16 Out - 14:08
Seg 16 Out - 11:52
Seg 16 Out - 9:38
Seg 16 Out - 8:44
Seg 16 Out - 5:53
Dom 15 Out - 23:53
Dom 15 Out - 20:00
Dom 15 Out - 19:42
Dom 15 Out - 19:35
Dom 15 Out - 18:23
Dom 15 Out - 18:05
Dom 15 Out - 17:06
Dom 15 Out - 16:59
Dom 15 Out - 16:41
Dom 15 Out - 15:57
Dom 15 Out - 15:11
Dom 15 Out - 15:04
Dom 15 Out - 14:29
Dom 15 Out - 13:44
Dom 15 Out - 12:59
Dom 15 Out - 12:42
Dom 15 Out - 12:37
Dom 15 Out - 11:44
Dom 15 Out - 10:25
Dom 15 Out - 9:03
Dom 15 Out - 8:19
Dom 15 Out - 8:19
Dom 15 Out - 8:09
Dom 15 Out - 7:23
Dom 15 Out - 0:39
Sab 14 Out - 23:57
Sab 14 Out - 23:30
Sab 14 Out - 19:07
Sab 14 Out - 18:01
Sab 14 Out - 17:55
Sab 14 Out - 16:25
Sab 14 Out - 12:50
Sab 14 Out - 12:46
Sex 13 Out - 23:05
Sex 13 Out - 21:21
Sex 13 Out - 20:27
Sex 13 Out - 17:45
Sex 13 Out - 17:37
Sex 13 Out - 15:31
Sex 13 Out - 14:59
Sex 13 Out - 14:02
Sex 13 Out - 11:17
Sex 13 Out - 9:27
Sex 13 Out - 2:17
Phph09
Phph09
Phph09
Phph09
richardson
Dom3000
felipehobs1
Phph09
felipehobs1
Dom3000
Callyde Jr
kalielson
kalielson
Phph09
Phph09
Valakinhas
TylerDurden
Duarte
Duarte
richardson
Dom3000
marino96
fecirineu
richardson
fecirineu
fariscolucas
fariscolucas
Manawydan
rafaelllsd
rafaelllsd
endersoneneilsa
natanael.olimpio
alxgames
Callyde Jr
Unidade3d5
WesClaudino
EvertonSantos
BRGC
michelly
Phph09
ScorpionG4mer
EvertonSantos
diegopds
gabrielgrk
zZAndersonZz
Fagner
MRX
ScorpionG4mer
Unidade3d5
richerd
Matrirxp
Callyde Jr
colosso16
Joao07
Callyde Jr
EvertonSantos
EvertonSantos
Ghosthy
felipehobs1
MRX
Callyde Jr
Duarte
glauco
luis gustavo
thales.ulisses
heliab125
marcelinodns
luis gustavo
Duarte
CodeZone
contaska
contaska
thales.ulisses
Weslley
dimmuo
dstaroski
glauco
dstaroski
Phph09
eusouoglaydson
Weslley
Fagner
alxgames
Fagner
Fagner
MRX
Callyde Jr
Callyde Jr
luizmauro123
Madness
glauco
luiz12345
Fagner
Felipe Costa
Phph09
ubroly
PatifeCraft
dstaroski
Dom3000

Porta com senha!

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

Resolvido Porta com senha!

Mensagem por LeonradoGp em Qua 26 Ago - 14:00

Galera eu preciso de um script de uma porta com senha.
tipo eu chego na porta e aperto "e" ai aparece pra por a senha clicando em cada numero na imagem,ai a porta abre, e se der erro ai sai um som.
avatar
LeonradoGp
Membro
Membro

Masculino PONTOS : 1037
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Porta com senha!

Mensagem por MarcosSchultz em Sex 28 Ago - 14:21

Cara, isto é um pouco complexo de fazer... Não o sistema de comparação de senha em si, más a parte do digitador.

Dá uma olhada neste script básico que eu fiz para ir na camera:

Código:

using UnityEngine;
using System.Collections;

public class Senha : MonoBehaviour {
   public string senha;
   private string senhaTXT;
   private  GUIStyle style;
   void Start(){
      senhaTXT = string.Empty;
      style = new GUIStyle();
   }
   void OnGUI(){
      //numeros da senha
         GUI.Box(new Rect(Screen.width / 2.61f, Screen.height / 8, Screen.width / 4.3f, Screen.height / 8), senhaTXT);
      // 1 - 2 - 3
         if (GUI.Button (new Rect (Screen.width / 2.61f, Screen.height / 3, Screen.width / 14, Screen.height / 8), "1")) {
            senhaTXT = senhaTXT + "1";
         }
         if (GUI.Button (new Rect (Screen.width / 2.16f, Screen.height / 3, Screen.width / 14, Screen.height / 8), "2")) {
            senhaTXT = senhaTXT + "2";
         }
         if (GUI.Button (new Rect (Screen.width / 1.835f, Screen.height / 3, Screen.width / 14, Screen.height / 8), "3")) {
            senhaTXT = senhaTXT + "3";
         }
      // 4 - 5 - 6
         if (GUI.Button (new Rect (Screen.width / 2.61f, Screen.height / 2.1f, Screen.width / 14, Screen.height / 8), "4")) {
            senhaTXT = senhaTXT + "4";
         }
         if (GUI.Button (new Rect (Screen.width / 2.16f, Screen.height / 2.1f, Screen.width / 14, Screen.height / 8), "5")) {
            senhaTXT = senhaTXT + "5";
         }
         if (GUI.Button (new Rect (Screen.width / 1.835f, Screen.height / 2.1f, Screen.width / 14, Screen.height / 8), "6")) {
            senhaTXT = senhaTXT + "6";
         }
      // 7 - 8 - 9
         if (GUI.Button (new Rect (Screen.width / 2.61f, Screen.height / 1.6f, Screen.width / 14, Screen.height / 8), "7")) {
            senhaTXT = senhaTXT + "7";
         }
         if (GUI.Button (new Rect (Screen.width / 2.16f, Screen.height / 1.6f, Screen.width / 14, Screen.height / 8), "8")) {
            senhaTXT = senhaTXT + "8";
         }
         if (GUI.Button (new Rect (Screen.width / 1.835f, Screen.height / 1.6f, Screen.width / 14, Screen.height / 8), "9")) {
            senhaTXT = senhaTXT + "9";
         }
      // * - 0 - #
         if (GUI.Button (new Rect (Screen.width / 2.61f, Screen.height / 1.3f, Screen.width / 14, Screen.height / 8), "*")) {
            senhaTXT = senhaTXT + "*";
         }
         if (GUI.Button (new Rect (Screen.width / 2.16f, Screen.height / 1.3f, Screen.width / 14, Screen.height / 8), "0")) {
            senhaTXT = senhaTXT + "0";
         }
         if (GUI.Button (new Rect (Screen.width / 1.835f, Screen.height / 1.3f, Screen.width / 14, Screen.height / 8), "#")) {
            senhaTXT = senhaTXT + "#";
         }
      // RESSETAR OU CONFIRMAR
      if (GUI.Button (new Rect (Screen.width / 1.5f, Screen.height / 1.7f, Screen.width / 5, Screen.height / 8), "RESSETAR")) {
         senhaTXT = string.Empty;
      }
      if (GUI.Button (new Rect (Screen.width / 1.5f, Screen.height / 2.5f, Screen.width / 5, Screen.height / 8), "CONFIRMAR")) {
         if(senhaTXT == senha){
            senhaTXT = "Senha Correta";
         }else{
            senhaTXT = "Senha Incorreta";
         }
      }
   }
}
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9741
REPUTAÇÃO : 1678
Idade : 21
Á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

Resolvido Re: Porta com senha!

Mensagem por LeonradoGp em Sab 29 Ago - 15:42

e como eu faço para esse script ser executado só quando eu apertar a letra "E" na porta?? e tbm quando ele digitar a senha correta carregar outra scene?
avatar
LeonradoGp
Membro
Membro

Masculino PONTOS : 1037
REPUTAÇÃO : 1
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Porta com senha!

Mensagem por MarcosSchultz em Ter 1 Set - 21:32

Use a função "OnTriggerEnter" para detectar se esta perto da porta ou um "Vector3.Distance"

Depois faça um simples if para quando você apertar "e", alguma bariavel booleana fica verdadeira. Depois basta colocar os comandos GUI de senha dentro de uma condição em que a variavel booleana necessita estar verdadeira.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9741
REPUTAÇÃO : 1678
Idade : 21
Á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

Resolvido teste

Mensagem por bianchi31 em Qua 2 Set - 9:29

Opa boa tarde , eu nao entendo nada de programação , e eu estava querendo mesma coisa que voce, ai vi o que o Marcos postou, e juntei com script da porta que ele mesmo colocou, ai consegui, agora caso esteja errado mau ae pessoal ^^
ESSE SCRIPT E SEM 'TELEPORTE'


assim quando vc chegar perto dela e apertar "E"  ela ira abrir o painel com senha.

criar um Script com nome : Codigocamera e joga no objeto vazio de sua porta
Código:
using UnityEngine;
using System.Collections;

public class Codigocamera : MonoBehaviour {
   public string senha;
   private string senhaTXT;
   private  GUIStyle style;
   private GameObject Jogador;
   private bool PodeAbrir;
   public float distanciaParaAbrir = 2;
   public bool AtivarGui = false;
   private float RotacaoFechada,RotacaoAberta;
   private bool MovimentarPorta,EstaAberta;
   public float VelocidadeDeGiro = 60;
   private float CronometroDoAviso,CronometroMovimento;
   private Codigocamera script; // "Codigocamera" nome desse script - troque para nome de seu script
   private PortaAoContrario script1;  // "PortaAoContario" nome do script da porta normal



      void Start(){
      script = GetComponent<Codigocamera>(); //"Codigocamera" nome desse script
      script1 = GetComponent<PortaAoContrario>();  // "PortaAoContario" nome do script da porta normal
      EstaAberta = false;
      senhaTXT = string.Empty;
      style = new GUIStyle();
      Jogador = GameObject.FindWithTag ("Player");
      RotacaoFechada = transform.eulerAngles.y;
      RotacaoAberta = transform.eulerAngles.y + 90;
      if (RotacaoAberta > 360) {
         RotacaoAberta = transform.eulerAngles.y + 90 -360;
      }
   }

   void Update (){
      // CHECAHDO SE ESTA PERTO OU NAO
      if (Input.GetKeyDown ("e") && Vector3.Distance (transform.position, Jogador.transform.position) <= distanciaParaAbrir && AtivarGui == false) {
         PodeAbrir = true;
         AtivarGui = true;
      } else if (Vector3.Distance (transform.position, Jogador.transform.position) > distanciaParaAbrir) {
         PodeAbrir = false;
         AtivarGui = false;
      }

      {
         if (Input.GetKeyDown ("escape") && AtivarGui == true)
            AtivarGui = false;
      }
      if (MovimentarPorta == true) {
         CronometroMovimento += Time.deltaTime;
      }
      if (CronometroMovimento >= 2 + 75 / VelocidadeDeGiro) {
         MovimentarPorta = false;
         CronometroMovimento = 0;
         EstaAberta = !EstaAberta;
         script.enabled = false;   // depois que o movimento da porta for concluido, desabilitar esse script
         script1.enabled = true;  // depois que o movimento da porta for concluido, ativar script da porta

      }
   }


   void FixedUpdate (){
      if (MovimentarPorta == true && EstaAberta == false) {
         Vector3 rotacaoFinal = new Vector3(0,RotacaoAberta,0);
         transform.eulerAngles = Vector3.Lerp (transform.eulerAngles,rotacaoFinal,Time.deltaTime*(VelocidadeDeGiro/50));

      }
      // MOVIMENTO DE FECHAR A PORTA
      else if (MovimentarPorta == true && EstaAberta == true) {
         Vector3 rotacaoFinal = new Vector3(0,RotacaoFechada,0);
         transform.eulerAngles = Vector3.Lerp (transform.eulerAngles,rotacaoFinal,Time.deltaTime*(VelocidadeDeGiro/50));
      }
   }
   void OnGUI(){
      //numeros da senha
      if(AtivarGui == true)
      GUI.Box(new Rect(Screen.width / 2.61f, Screen.height / 8, Screen.width / 4.3f, Screen.height / 8), senhaTXT);
      // 1 - 2 - 3
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 2.61f, Screen.height / 3, Screen.width / 14, Screen.height / 8), "1")) {
         senhaTXT = senhaTXT + "1";
      }
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 2.16f, Screen.height / 3, Screen.width / 14, Screen.height / 8), "2")) {
         senhaTXT = senhaTXT + "2";
      }
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 1.835f, Screen.height / 3, Screen.width / 14, Screen.height / 8), "3")) {
         senhaTXT = senhaTXT + "3";
      }
      // 4 - 5 - 6
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 2.61f, Screen.height / 2.1f, Screen.width / 14, Screen.height / 8), "4")) {
         senhaTXT = senhaTXT + "4";
      }
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 2.16f, Screen.height / 2.1f, Screen.width / 14, Screen.height / 8), "5")) {
         senhaTXT = senhaTXT + "5";
      }
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 1.835f, Screen.height / 2.1f, Screen.width / 14, Screen.height / 8), "6")) {
         senhaTXT = senhaTXT + "6";
      }
      // 7 - 8 - 9
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 2.61f, Screen.height / 1.6f, Screen.width / 14, Screen.height / 8), "7")) {
         senhaTXT = senhaTXT + "7";
      }
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 2.16f, Screen.height / 1.6f, Screen.width / 14, Screen.height / 8), "8")) {
         senhaTXT = senhaTXT + "8";
      }
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 1.835f, Screen.height / 1.6f, Screen.width / 14, Screen.height / 8), "9")) {
         senhaTXT = senhaTXT + "9";
      }
      // * - 0 - #
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 2.61f, Screen.height / 1.3f, Screen.width / 14, Screen.height / 8), "*")) {
         senhaTXT = senhaTXT + "*";
      }
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 2.16f, Screen.height / 1.3f, Screen.width / 14, Screen.height / 8), "0")) {
         senhaTXT = senhaTXT + "0";
      }
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 1.835f, Screen.height / 1.3f, Screen.width / 14, Screen.height / 8), "#")) {
         senhaTXT = senhaTXT + "#";
      }
      // RESSETAR OU CONFIRMAR
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 1.5f, Screen.height / 1.7f, Screen.width / 5, Screen.height / 8), "RESETAR")) {
         senhaTXT = string.Empty;
      }
      if (AtivarGui == true && GUI.Button (new Rect (Screen.width / 1.5f, Screen.height / 2.5f, Screen.width / 5, Screen.height / 8), "CONFIRMAR")) {
         if(senhaTXT == senha){
            senhaTXT = "Senha Correta";
            MovimentarPorta = true;
            EstaAberta = false;

            


         }else{
            senhaTXT = "Senha Incorreta";

         }

         }

      }

   }

esse script voce so cria se quiser que ela abra e feche normalmente.

Criar outro script com nome PortaAoContrario e joga no objeto vazio de sua porta  e desabilita ele no unity
esse e o mesmo script que marcos postou no forum aqui "Chaves"
so que mudei para negativo.

Código:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
[RequireComponent(typeof(AudioSource))]
public class PortaAoContrario : MonoBehaviour {
   public bool EstaTrancada,PrecisaDeChave;
   public AudioClip PortaNormal,PortaTrancada,SomDeChave;
   public float distanciaParaAbrir = 3;
   public Font Fonte;
   public float VelocidadeDeGiro = 60;
   public int IDdaPorta;
   public static List<int> ListaDeIDs = new List<int>(); // LISTA DE CHAVES QUE O PLAYER CONTEM
   private bool MovimentarPorta, EstaAberta,PodeAbrir,AvisoTrancada,temAChave;
   private float CronometroDoAviso,CronometroMovimento;
   private float RotacaoFechada,RotacaoAberta;
   private GameObject Jogador;
   void Start (){
      EstaAberta = false;
      AvisoTrancada = false;
      temAChave = false;
      RotacaoFechada = transform.eulerAngles.y;
      RotacaoAberta = transform.eulerAngles.y - 90;
      if (RotacaoAberta > 360) {
         RotacaoAberta = transform.eulerAngles.y + 90 -360;
      }
      Jogador = GameObject.FindWithTag ("Player");
      if (PrecisaDeChave == true) {
         EstaTrancada = true;
      }
   }
   void Update (){
      // CHECAHDO SE ESTA PERTO OU NAO
      if (Vector3.Distance (transform.position, Jogador.transform.position) <= distanciaParaAbrir) {
         PodeAbrir = true;
      } else if (Vector3.Distance (transform.position, Jogador.transform.position) > distanciaParaAbrir) {
         PodeAbrir = false;
      }
      //CHECANDO SE ESTA TRANCADA OU NAO... SE NAO ESTIVER, PODE ABRIR
      if (EstaTrancada == false) {
         if(Input.GetKeyDown("e") && MovimentarPorta == true && PodeAbrir == true){
            CronometroMovimento = 0;
            EstaAberta = !EstaAberta;
            GetComponent<AudioSource>().Stop ();
            GetComponent<AudioSource>().PlayOneShot(PortaNormal);
         }
         else if(Input.GetKeyDown("e") && PodeAbrir == true && MovimentarPorta == false){
            GetComponent<AudioSource>().PlayOneShot(PortaNormal);
            MovimentarPorta = true;
         }
      }
      // SE A PORTA ESTIVER TRANCADA
      if (Input.GetKeyDown ("e") && PodeAbrir == true && EstaTrancada == true) {
         //CHECA SE O PALYER TEM A CHAVE OU NAO
         for(int x = 0; x < ListaDeIDs.Count; x++){
            if(IDdaPorta == ListaDeIDs[x]){
               temAChave = true;
            }else{
               temAChave = false;
            }
         }
         // SE O PALYER TEM A CHAVE
         if(temAChave == true && PrecisaDeChave == true){

            EstaTrancada = false;
            if(!GetComponent<AudioSource>().isPlaying){
               GetComponent<AudioSource>().PlayOneShot(SomDeChave);

            }
         }
         // SE O PALYER NAO TEM A CHAVE
         else {
            AvisoTrancada = true;
            if(!GetComponent<AudioSource>().isPlaying){
               GetComponent<AudioSource>().PlayOneShot(PortaTrancada);
            }
         }
      }
      // CRONOMETRO DO AVISO DA PORTA TRANCADA
      if (AvisoTrancada == true) {
         CronometroDoAviso += Time.deltaTime;
      }
      if (CronometroDoAviso >= 3) {
         AvisoTrancada = false;
         CronometroDoAviso = 0;
      }
      // CRONOMETRO DO MOVIMENTO DA PORTA
      if (MovimentarPorta == true) {
         CronometroMovimento += Time.deltaTime;
      }
      if(CronometroMovimento >= 2 + 75/VelocidadeDeGiro){
         MovimentarPorta = false;
         CronometroMovimento = 0;
         EstaAberta = !EstaAberta;
      }
   }
   void FixedUpdate (){
      // MOVIMENTO DE ABRIR A PORTA
      if (MovimentarPorta == true && EstaAberta == false) {
         Vector3 rotacaoFinal = new Vector3(0,RotacaoAberta,0);
         transform.eulerAngles = Vector3.Lerp (transform.eulerAngles,rotacaoFinal,Time.deltaTime*(VelocidadeDeGiro/50));
      }
      // MOVIMENTO DE FECHAR A PORTA
      else if (MovimentarPorta == true && EstaAberta == true) {
         Vector3 rotacaoFinal = new Vector3(0,RotacaoFechada,0);
         transform.eulerAngles = Vector3.Lerp (transform.eulerAngles,rotacaoFinal,Time.deltaTime*(VelocidadeDeGiro/50));
      }
   }
   void OnGUI (){
      // AVISO SOBRE PORTA TRANCADA
      GUI.skin.font = Fonte;
      GUI.skin.label.fontSize = Screen.height / 20;
      if (AvisoTrancada == true) {
         if(PrecisaDeChave == true){
            GUI.Label(new Rect(Screen.width/2-Screen.width/5,Screen.height/2-Screen.height/16,Screen.width/2.5f,Screen.height/8),"Voce precisa de uma chave");
         }
         else if(PrecisaDeChave == false){
            GUI.Label(new Rect(Screen.width/2-Screen.width/5,Screen.height/2-Screen.height/16,Screen.width/2.5f,Screen.height/8),"Nunca ira abrir");
         }
      }
   }
}


Creditos : MarcosSchultz Very Happy . vlw flw

bianchi31
Iniciante
Iniciante

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

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Porta com senha!

Mensagem por LeonradoGp em Qua 2 Set - 15:30

Obrigado!!! Funciono direitinho vlw man!!!
avatar
LeonradoGp
Membro
Membro

Masculino PONTOS : 1037
REPUTAÇÃO : 1
Idade : 18
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