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 usar uma animação de uma arma animada na Unity...
Pegar Componentes de uma array!
Jogo Dengame na Play Store. (Baixe agora)
problemas ao exportar do sketchup ao unity
Separar um modelo .obj em varios outros pequenos
MIRA DE JOGO DE FPS!
navMash problema com debug.log
[TUTORIAL] Sistema de DIA E NOITE completo, com luzes noturnas e SISTEMA DE NUVENS
MoonthyStudios está recrutando
Problema com o MonoDevelop
COMO FAZER JOGO DE FPS!
Velocimetro Digital
Como melhorar desempenho de animações
Ajuda com Script "NullReferenceException: Object reference not set to an instance "
[RESOLVIDO] Cena não abre
[TUTORIAL] Script de pulo para jogos 3D em geral (Unity - C#)
[AJUA] JOGO MUDO SEM SOM!!!
[_____CRONOGRAMA DO CANAL_____]
Sistema CFD com Unity: Simular partículas com colisão em túnel de vento
TELA ROSA NO GAME
Como usar o Multi Touch para movimentar um personagem ?
[DUVIDA] Script Não Funciona
Limite e Volta no transform translate
Duvida com script
Ajudem com efeito "gelatina" em modelos.
Inteligência Artificial
Como fazer 1 Portal
Existe algum tipo de FPSController para android?
Cena Loading para carregar proximo Level
Script cria 3 objetos ao apertar botão uma vez ERROR
Juntar 2 projetos em um unico
[Assets/Scripts] Repositório no Github com sistemas free.
[____TÓPICO LIVRE____] FALE O QUE QUISER
Modelagem de personagem e cenário
Jogo 2d com obstáculos em movimento que quando batem no personagem ele vai para debaixo do chão
[AJUDA] Carro virando rapido de mais
[RESOLVIDO] Instanciar um objeto como filho
Cor
Laqua - Jogo de slá oque
Jogo para Android, testem por favor
//Script com tuto//
[TUTORIAL] UNITY 5 - Efeito submerso (underwater effect), distorção da água e gotas na tela
[RESOLVIDO] Rádio por distancia
saindo do jogo caso um programa não estiver aberto
QUIOFOBIA DEMO-JOGO DE TERROR INDIE
[RESOLVIDO] Script destruir apenas o objeto que o tem
SISTEMA DE CARGA
[ERRO] Unity Bug Reporter
RIGIDBODY IR PARANDO DE QUICAR
Procurando animador
tenho um script que faz o zombie atacar o jogador e tirar vida so que nao esta funcionando alguem pode me ajudar
Sistema de build place
[2 interiores Modelo] + Download Grátis --Para uso comercial!
Pode coolocar os jogos que aprendeu a fazer no youtube a venda?
sistema de combos e danos
PRECISO DE UMA PESSOA QUE DESENHE PERSONAGEM E CENARIO
Modelos 3D
ROLLER BALL DO STANDARD ASSETS
SCRIPT DE INTELIGENCIA ARTIFICIAL PARA ZUMBI, DESVIAR DE OBJETOS E ATACAR JOGADOR
[Resolvido]Trocar cena ao eliminar objetos
Menu Right Click igual Tibia
Sistema de Skins estilo CsGo ou Critical Ops...
[RESOLVIDO] Carro flutuando
[TUTORIAL] Unity 5 - Como criar o próprio FPS Controller
// RAIN no unity//
[DÚVIDA]Texto Não Aparece Unity 5
Texturização para Game em android
Como fazer aparecer notificações no celular android?
[RESOLVIDO]Erro com script OnTriggerEnter e BoxCollider
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
Testem meu Jogo de Aventura
[Assets] modelos 3d
[TUTORIAL] Unity 5 - Porta automática
como criar um jogo igual a guitar hero?
(Dúvida) Erro criar sala com Photon.
Dicas para otimizar o meu jogo
Sistema de construção estilo habbo
[ERRO] Fatal Error Unity!!!
Fazer um Certo Ponto da mesh mudar de cor como um botão piscando
PlayerPrefs
Dúvida sobre instantiate!
Footsteps no CharacterController (Unity 5)
Como fazer objetos não atravessar paredes usando transform.Translate?
Quando meu inimigo morre todos morrem, alguem ajuda ?
Asset Store
Mudar cor de um material por Script de forma suave
[Dúvida] Otimização
[DUVIDA] Como utilizar o touch no Android em um jogo 2D
[TUTORIAL] Spawn de objetos aleatorios em lugares aleatorios
Mudança no NavMeshAgent?
Script para saber se ena está ativa ou carregada
Duvida
Inserir uma página da web dentro do meu jogo
[TUTORIAL] Acessar propriedades dos SHADERS através de SCRIPTS
// Sistema de Afogamento//
Inimigo seguir quando ver o player
Jogo da Memória para crianças. (Android)
(Dúvida) Mirar em terceira pessoa.
Eu produzi esse jogo na unity e gostaria que vocês testassem e avaliassem
Hoje à(s) 12:19 am
Ontem à(s) 11:15 pm
Ontem à(s) 9:18 pm
Ontem à(s) 8:42 pm
Ontem à(s) 8:27 pm
Ontem à(s) 8:26 pm
Ontem à(s) 8:25 pm
Ontem à(s) 8:24 pm
Ontem à(s) 8:05 pm
Ontem à(s) 5:48 pm
Ontem à(s) 5:46 pm
Ontem à(s) 3:53 pm
Ontem à(s) 3:37 pm
Ontem à(s) 3:22 pm
Ontem à(s) 3:18 pm
Ontem à(s) 3:15 pm
Ontem à(s) 3:11 pm
Ontem à(s) 3:08 pm
Ontem à(s) 3:05 pm
Ontem à(s) 2:53 pm
Ontem à(s) 2:52 pm
Ontem à(s) 2:51 pm
Ontem à(s) 2:39 pm
Ontem à(s) 2:38 pm
Ontem à(s) 2:25 pm
Ontem à(s) 2:25 pm
Ontem à(s) 2:24 pm
Ontem à(s) 2:21 pm
Ontem à(s) 2:16 pm
Ontem à(s) 12:32 pm
Ontem à(s) 9:17 am
Ontem à(s) 4:13 am
Ontem à(s) 12:07 am
Ontem à(s) 12:03 am
Dom Fev 26, 2017 11:06 pm
Dom Fev 26, 2017 6:34 pm
Dom Fev 26, 2017 2:15 pm
Dom Fev 26, 2017 1:51 pm
Dom Fev 26, 2017 10:42 am
Dom Fev 26, 2017 10:32 am
Dom Fev 26, 2017 10:09 am
Dom Fev 26, 2017 5:38 am
Dom Fev 26, 2017 5:27 am
Dom Fev 26, 2017 5:24 am
Dom Fev 26, 2017 4:59 am
Dom Fev 26, 2017 4:33 am
Sab Fev 25, 2017 7:02 pm
Sab Fev 25, 2017 6:30 pm
Sab Fev 25, 2017 6:27 pm
Sab Fev 25, 2017 3:13 pm
Sab Fev 25, 2017 12:32 pm
Sab Fev 25, 2017 3:50 am
Sex Fev 24, 2017 11:38 pm
Sex Fev 24, 2017 10:38 pm
Sex Fev 24, 2017 10:10 pm
Sex Fev 24, 2017 9:31 pm
Sex Fev 24, 2017 8:40 pm
Sex Fev 24, 2017 8:39 pm
Sex Fev 24, 2017 7:26 pm
Sex Fev 24, 2017 7:17 pm
Sex Fev 24, 2017 6:12 pm
Sex Fev 24, 2017 3:54 pm
Sex Fev 24, 2017 9:44 am
Qui Fev 23, 2017 2:50 pm
Qui Fev 23, 2017 12:06 pm
Qua Fev 22, 2017 11:32 pm
Qua Fev 22, 2017 8:27 pm
Qua Fev 22, 2017 8:19 pm
Qua Fev 22, 2017 3:15 pm
Qua Fev 22, 2017 9:18 am
Qua Fev 22, 2017 12:36 am
Ter Fev 21, 2017 8:45 pm
Ter Fev 21, 2017 4:40 pm
Ter Fev 21, 2017 11:42 am
Ter Fev 21, 2017 11:25 am
Seg Fev 20, 2017 10:43 pm
Seg Fev 20, 2017 10:00 pm
Seg Fev 20, 2017 9:04 pm
Seg Fev 20, 2017 9:02 pm
Seg Fev 20, 2017 9:00 pm
Seg Fev 20, 2017 8:56 pm
Seg Fev 20, 2017 8:49 pm
Seg Fev 20, 2017 8:46 pm
Seg Fev 20, 2017 8:44 pm
Seg Fev 20, 2017 8:42 pm
Seg Fev 20, 2017 8:40 pm
Seg Fev 20, 2017 8:36 pm
Seg Fev 20, 2017 8:28 pm
Seg Fev 20, 2017 8:25 pm
Seg Fev 20, 2017 8:23 pm
Seg Fev 20, 2017 8:19 pm
Seg Fev 20, 2017 8:14 pm
Seg Fev 20, 2017 8:12 pm
Seg Fev 20, 2017 7:37 pm
Seg Fev 20, 2017 3:35 pm
Seg Fev 20, 2017 3:19 pm
Seg Fev 20, 2017 8:54 am
Seg Fev 20, 2017 12:10 am
Dom Fev 19, 2017 10:55 pm
artplayer
rafaelllsd
Hardencio
thiagograssi
lucasfera15
lucasfera15
dstaroski
lucasfera15
dstaroski
zZAndersonZz
PauloFR
Junim
sabbath
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
thiagograssi
AndyShow
dimmuo
PauloFR
PauloFR
Moa
Junim
PauloFR
richerd
dstaroski
dstaroski
Zecandy
Aprendiz
AndyShow
AndyShow
AndyShow
AndyShow
AndyShow
AndyShow
AndyShow
diogodavilafernandes
Weverton Borges da Silva
AndyShow
MateusWTP
zBanidor
AndyShow
joabr
Junim
lucasfera15
PauloFR
PauloFR
AndyShow
weslleyFx
AndyShow
MarcosSchultz
Zecandy
Blue Ark
DoctorGame15
PauloFR
PauloFR
Fábiow775
MateusWTP
PauloFR
silva75
thiagograssi
rafaelllsd
MarcosSchultz
Luiz Mauro TCC
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
CanabravaBR
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
Zecandy
AndyShow
Pulitano
artplayer
niao

Porta com senha!

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

DÚVIDA Porta com senha!

Mensagem por LeonradoGp em Qua Ago 26, 2015 2:00 pm

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.

LeonradoGp
Membro
Membro

Masculino PONTOS : 801
REPUTAÇÃO : 0
Idade : 17
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Porta com senha!

Mensagem por MarcosSchultz em Sex Ago 28, 2015 2:21 pm

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";
         }
      }
   }
}

MarcosSchultz
Administrador

Masculino PONTOS : 7881
REPUTAÇÃO : 1081
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: Porta com senha!

Mensagem por LeonradoGp em Sab Ago 29, 2015 3:42 pm

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?

LeonradoGp
Membro
Membro

Masculino PONTOS : 801
REPUTAÇÃO : 0
Idade : 17
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Porta com senha!

Mensagem por MarcosSchultz em Ter Set 01, 2015 9:32 pm

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.

MarcosSchultz
Administrador

Masculino PONTOS : 7881
REPUTAÇÃO : 1081
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 teste

Mensagem por bianchi31 em Qua Set 02, 2015 9:29 am

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 : 666
REPUTAÇÃO : 2
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Porta com senha!

Mensagem por LeonradoGp em Qua Set 02, 2015 3:30 pm

Obrigado!!! Funciono direitinho vlw man!!!

LeonradoGp
Membro
Membro

Masculino PONTOS : 801
REPUTAÇÃO : 0
Idade : 17
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