Duvida sobre Input.GetKeyDown
2 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Duvida sobre Input.GetKeyDown
Ola amigos, tenho uma duvida sobre um código, o que ocorre e que o script foi feito para abrir portas e trocar de cenas com chaves e etc,
porem esse script funciona do seguinte tipo, quando eu apertar "E" na porta ele vai troca de cena porém, preciso apertar varias e varias vezes para que ele funcione ao em vez de uma só , OBS: já revisei o script varias e varias vezes e não consigo acha o erro...
créditos desse script: Marcos schultz
porem esse script funciona do seguinte tipo, quando eu apertar "E" na porta ele vai troca de cena porém, preciso apertar varias e varias vezes para que ele funcione ao em vez de uma só , OBS: já revisei o script varias e varias vezes e não consigo acha o erro...
créditos desse script: Marcos schultz
- Código:
using UnityEngine; // JUMPPER GAMES ESTÚDIO.
using System.Collections;
[RequireComponent(typeof(AudioSource))]
public class PortaNiveis2 : MonoBehaviour {
public Font Fonte;
public Color cor;
public bool Trancada;
public float Distancia = 3;
public float tempoDoAviso = 2;
public string Nomedacena;
public AudioClip audioPortaAbrindo,audioPortaTrancada,audioDestrancandoporta;
public Texture textura;
private bool avisoPortaTrancada,ativarCarregamento;
public bool TemAChave = false;
public int IDdaChave;
private GameObject Jogador;
private float cronometroAviso,cronometroCarregamento;
// Use this for initialization
void Start () {
cronometroAviso = 0;
cronometroCarregamento = 0;
avisoPortaTrancada = false;
ativarCarregamento = false;
Jogador = GameObject.FindWithTag ("Player");
}
void Update () {
// SE TENTOU ABRIR A PORTA
if (Vector3.Distance (Jogador.transform.position, transform.position) <= Distancia && Input.GetKeyDown("e")) {
for (int x = 0; x < DATAinf.chaves.Count; x++) {
if (DATAinf.chaves [x] == IDdaChave) {
TemAChave = true;
}
}
if (Trancada == true && TemAChave == false) {
avisoPortaTrancada = true;
GetComponent<AudioSource> ().PlayOneShot (audioPortaTrancada);
} else if (Trancada == true && TemAChave == true) {
Trancada = false;
GetComponent<AudioSource> ().PlayOneShot (audioDestrancandoporta);
} else if (Trancada == false) {
ativarCarregamento = true;
GetComponent<AudioSource> ().PlayOneShot (audioPortaAbrindo);
}
// CRONOMETRO AVISO
if (avisoPortaTrancada == true) {
cronometroAviso += Time.deltaTime;
}
if (cronometroAviso >= tempoDoAviso) {
avisoPortaTrancada = false;
cronometroAviso = 0;
}
// CRONOMETRO CAREEGAMENTO
if (ativarCarregamento == true) {
cronometroCarregamento += Time.deltaTime;
}
if (cronometroCarregamento >= 1) {
Application.LoadLevel (Nomedacena);
}
}
}
void OnGUI () {
cor.a = cronometroCarregamento;
GUI.color = cor;
GUI.DrawTexture (new Rect (0, 0, Screen.width, Screen.height), textura);
GUI.color = new Color32 (255, 255, 255, 255);
GUI.skin.font = Fonte;
GUI.skin.label.fontSize = Screen.height / 20;
if (avisoPortaTrancada == true) {
GUI.Label(new Rect(50, 10, 300, 100), "A porta está trancada .");
}
}
}
bymaxbig- Membro
- PONTOS : 3264
REPUTAÇÃO : 5
Idade : 25
Respeito as regras :
bymaxbig- Membro
- PONTOS : 3264
REPUTAÇÃO : 5
Idade : 25
Respeito as regras :
Weslley- Moderador
- PONTOS : 5727
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: Duvida sobre Input.GetKeyDown
Vlw brother vou usar esse
bymaxbig- Membro
- PONTOS : 3264
REPUTAÇÃO : 5
Idade : 25
Respeito as regras :
Tópicos semelhantes
» Duvida sobre GetKeyDown !!!!
» [RESOLVIDO] Dúvida com o Novo Input System
» [RESOLVIDO] Duvida sobre versao da unity e sobre o lerp
» [Duvida] Menu Input
» [Duvida] Input.GetKey
» [RESOLVIDO] Dúvida com o Novo Input System
» [RESOLVIDO] Duvida sobre versao da unity e sobre o lerp
» [Duvida] Menu Input
» [Duvida] Input.GetKey
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos