Input Mouse
3 participantes
Página 1 de 1
Input Mouse
Oie pessoal, gostaria de fazer com que todos os ataques do meu personagem fossem executados com o mesmo botão, no caso o botão esquerdo do mouse. Por exemplo: 1 click = primeiro ataque, 2 clicks em sequência = segundo e 3 clicks em sequência = terceiro ataque. Como seria possível fazer isso ? (Já tenho os ataques e tudo mais pronto, só não sei como poderia fazer essa parte do mouse), por que vi um pouco da documentação do mouse e não achei nada relacionado e aquela "Int" que pode ser adicionada é pra dizer qual dos três botões do mouse você está usando,ex: Input.GetMouseButton(0))), então acabei ficando meio perdido.
QueriaStarMorto- Avançado
- PONTOS : 2426
REPUTAÇÃO : 19
Respeito as regras :
Re: Input Mouse
boa noite, se nãp me engano ,se tratando do mouse chamamos o GetMouseButton(int index) ,chamaos o int d index, é uma ordem de cada botao/click do mouse tipo: 0 é o botao esquerdo ,1 é o direito e o 2 é o dom meio pode existir mais nao sei,,
amigo isso e recomendado para programadores avançados pq é meio q complicado,minha dica seria vc fazer uma coisa menos dificil,
eu estou sem unity no momento,pq reinstalei meu windows e tal,
más acho q seria mais ou menos vc criar um time para quando vc apertasse algum botao.caso apertasse iniciaria um contagem que quando essa contagem chegasse a ao max de tempo resetaria a conta/indice dos cliques
exemplo d mente pode conter erros ,más tente pegar o Exemplo para estudo:
como disse tou sem unity, não garanto muita coisa,más se vc pegar e fazer testes pode ate dar ceto, boa sorte
ate,
amigo isso e recomendado para programadores avançados pq é meio q complicado,minha dica seria vc fazer uma coisa menos dificil,
eu estou sem unity no momento,pq reinstalei meu windows e tal,
más acho q seria mais ou menos vc criar um time para quando vc apertasse algum botao.caso apertasse iniciaria um contagem que quando essa contagem chegasse a ao max de tempo resetaria a conta/indice dos cliques
exemplo d mente pode conter erros ,más tente pegar o Exemplo para estudo:
- Código:
public class minhaclassetc :Monoetc{
int clicks=0; //a conta dos clicks
public int maxClicks=3; //o numero max d cliques ou combos
bool startTime=false; //iniciar ou nao a contagem
public float timeCount=0; //a contagem
public float maxTime=1; //o max de tempo para o click receber um break de limite de tempo a tentar novamente
void Update(){
if(Input.GetMouseButtonDown(0)){ //mouse esquerdo
clicks+=1;
startTime=true;
}
if(startTtime){
timeCount+=0.1f*Time.DeltaTime;
}
if(timeCount>=maxTime||clicks>=maxClicks){
startTime=false;
timeCount=0;
clicks=0;
}
//daqui por diante vç coloca os ataques
if(clicks==1){ //sei lá soco
//açao
animator.SetBool("atack1",true);
animator.SetBool("atack2",false);
}else if(clicks==2){ //sei la chute
animator.SetBool("atack2",true);
animator.SetBool("atack1",false);
}
}
como disse tou sem unity, não garanto muita coisa,más se vc pegar e fazer testes pode ate dar ceto, boa sorte
ate,
Re: Input Mouse
Muito obrigado, não deu totalmente certo, mas agora que você já me deu uma base, vou tentar implementar até dar certo Obrigado
QueriaStarMorto- Avançado
- PONTOS : 2426
REPUTAÇÃO : 19
Respeito as regras :
Re: Input Mouse
Os ataques são apenas animações distintas? Se for, basta fazer com que a tecla de ataque seja o botão esquerdo do mouse, e quando a pessoa der clique uma booleana fica ativada, se não me engano, usando o Input.GetButtonDown("Fire1") tem a ver com o lado esquerdo do mouse também.
Então faça com que a booleana fique true quando aperta esse botão e false quando soltar, e daí enquanto a booleana está true, você deixa um parâmetro de animação true para a sequência de ataques que nos transitions do animator vão permanecer em loop até que o parâmetro fique false, daí fica automático.
Mas não sei se é assim que você quer, ou o ataque é de outro jeito, não apenas animado.
@Edit:
Uns meses atrás eu fiz esse sistema que citei acima (de sequência de animações de ataques) para um protótipo. Veja se é isso aí:
Cada vez que se clica com o lado esquerdo do mouse, uma animação diferente (um ataque diferente) era executado em sequência.
Então faça com que a booleana fique true quando aperta esse botão e false quando soltar, e daí enquanto a booleana está true, você deixa um parâmetro de animação true para a sequência de ataques que nos transitions do animator vão permanecer em loop até que o parâmetro fique false, daí fica automático.
Mas não sei se é assim que você quer, ou o ataque é de outro jeito, não apenas animado.
@Edit:
Uns meses atrás eu fiz esse sistema que citei acima (de sequência de animações de ataques) para um protótipo. Veja se é isso aí:
Cada vez que se clica com o lado esquerdo do mouse, uma animação diferente (um ataque diferente) era executado em sequência.
QueriaStarMorto- Avançado
- PONTOS : 2426
REPUTAÇÃO : 19
Respeito as regras :
Tópicos semelhantes
» Duvida Input.GetAxis ("Mouse ScrollWheel")
» Input Get Key
» Problema com Input
» Histórico de Input
» Problemas de input
» Input Get Key
» Problema com Input
» Histórico de Input
» Problemas de input
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos