Botão Pressionado == True, Botao Solto == False(Como fazer)(Botao Virtual)
4 participantes
Página 1 de 1
Botão Pressionado == True, Botao Solto == False(Como fazer)(Botao Virtual)
Como posso fazer para quando eu estiver Pressionando o botão ele mande chame a void BotaoDown(); , e quando eu soltar ele chamar a void BotaoUp();
Preciso esse sistema para meu game, no botão tipo de Buzina, mas estou usando voids para chamar as ações poderiam me ajudar ?
Preciso esse sistema para meu game, no botão tipo de Buzina, mas estou usando voids para chamar as ações poderiam me ajudar ?
EricknhYT- Avançado
- PONTOS : 2044
REPUTAÇÃO : 8
Idade : 20
Áreas de atuação : Programando Patrulha Ostensiva - Msc Studios
Respeito as regras :
Re: Botão Pressionado == True, Botao Solto == False(Como fazer)(Botao Virtual)
Talvez se você substituir o Animator por AudioSource funcione.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class HablitarComponente : MonoBehaviour
{
public Animator myAnimator;
void Update()
{
{
if (Input.GetKeyDown(KeyCode.C))
{
GetComponent<Animator>().enabled = true;
}
if (Input.GetKeyUp(KeyCode.C))
{
GetComponent<Animator>().enabled = false;
}
}
}
}
Re: Botão Pressionado == True, Botao Solto == False(Como fazer)(Botao Virtual)
Nao amigo, nao e isso, preciso que seja em um botão (CANVAS), entende ? e preciso que quando estiver com o dedo em cima no (MOBILE) ele fique como TRUE (Chamando a VOID "DownButton") e quando soltar ele fica FALSE ( chamando a void "UpButton")Rangel Oblivion escreveu:Talvez se você substituir o Animator por AudioSource funcione.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class HablitarComponente : MonoBehaviour
{
public Animator myAnimator;
void Update()
{
{
if (Input.GetKeyDown(KeyCode.C))
{
GetComponent<Animator>().enabled = true;
}
if (Input.GetKeyUp(KeyCode.C))
{
GetComponent<Animator>().enabled = false;
}
}
}
}
EricknhYT- Avançado
- PONTOS : 2044
REPUTAÇÃO : 8
Idade : 20
Áreas de atuação : Programando Patrulha Ostensiva - Msc Studios
Respeito as regras :
Re: Botão Pressionado == True, Botao Solto == False(Como fazer)(Botao Virtual)
Você pode fazer dessa maneira
- Código:
private bool isPressing = false;
void Update () {
if (isPressing)
{
// Ações aqui
}
}
// Ação em UI da Unity apenas
// Você coloca como true quando o jogador clicar e
// false quando soltar
public void IsPressing (bool value)
{
isPressing = value;
}
NKKF- ProgramadorMaster
- PONTOS : 4818
REPUTAÇÃO : 574
Idade : 20
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras :
Re: Botão Pressionado == True, Botao Solto == False(Como fazer)(Botao Virtual)
Uma vez que tive que fazer um slider preencher enquanto o usuário pressionava um botão de UI, e para isso precisava saber o momento enquanto o jogador apertava esse botão e não quando.
Então acho q vc pode fazer igual eu fiz:
Daí no botão, vc referencia esses eventos através do EventTrigger component:
O primeiro evento é o Pointer Down, ou seja, enquanto vc está com o mouse/dedo no botão, então vc vai referenciar o método "IsHoldingDown".
O próximo é quando o jogador solta o dedo, então vc referencia o "IsHoldingUp", e por fim, no último referencia o "IsHoldingExit".
Então acho q vc pode fazer igual eu fiz:
- Código:
using UnityEngine;
public class ButtonIsPressingController{
public bool ButtonIsHolding {get; private set;}
public void IsHoldingDown()
{
//enquanto o botão estiver sendo pressionado
ButtonIsHolding = true;
}
public void IsHoldingUp()
{
//quando o jogador solta o botão
ButtonIsHolding = false;
}
public void IsHoldingExit()
{
//caso o jogador saia da área do botão, mas ainda está com o dedo na tela
IsHoldingUp();
}
}
Daí no botão, vc referencia esses eventos através do EventTrigger component:
O primeiro evento é o Pointer Down, ou seja, enquanto vc está com o mouse/dedo no botão, então vc vai referenciar o método "IsHoldingDown".
O próximo é quando o jogador solta o dedo, então vc referencia o "IsHoldingUp", e por fim, no último referencia o "IsHoldingExit".
Tópicos semelhantes
» (Resolvido) Ajuda com Cursor que ja começa como 'false'
» Trocar de true pra false em uma animação bool
» Como reconhecer que o botão de volume foi pressionado (Mobile)
» Carregar estado de todos os objeto(true, false)
» Como retornar "false" se um objeto não existir?
» Trocar de true pra false em uma animação bool
» Como reconhecer que o botão de volume foi pressionado (Mobile)
» Carregar estado de todos os objeto(true, false)
» Como retornar "false" se um objeto não existir?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos