Menu
CoddyTech

Botões do Mouse

Parte da seção Fundamentos de Scripting no Unity do Journey de Unity da Coddy. Lição 22 de 85.

Os botões do mouse têm três métodos próprios, que recebem o número do botão: 0 é o botão esquerdo, 1 o direito, 2 o do meio.

  • Input.GetMouseButtonDown(0): o botão esquerdo foi pressionado neste quadro.
  • Input.GetMouseButton(0): ele está pressionado agora, em cada quadro em que é mantido pressionado.
  • Input.GetMouseButtonUp(0): ele foi solto neste quadro.

Eles funcionam como os métodos de tecla, e Input.GetMouseButtonDown(0) é igual a Input.GetKeyDown(KeyCode.Mouse0). Este sino toca uma vez a cada clique no jogo:

public int rings = 0;

void Update()
{
    if (Input.GetMouseButtonDown(0))
    {
        rings++;
        Debug.Log("Ding! " + rings);
    }
}

Um clique em qualquer lugar do jogo conta, não apenas um clique no sino: esses métodos informam qual botão foi pressionado, não o que está sob o ponteiro. Descobrir em qual objeto ocorreu o clique exige mais código do que isso. Em um celular, o Unity informa um toque como o botão do mouse 0, então o sino também toca com os toques.

challenge icon

Desafio

Fácil

Cada clique aumenta o cubo, até o tamanho 2.

  1. Em Update(), escreva um if com Input.GetMouseButtonDown(0) && transform.localScale.x < 2f.
  2. Dentro dele, adicione new Vector3(0.25f, 0.25f, 0.25f) a transform.localScale.

Pressione “Jogar” e clique no jogo quatro vezes: o cubo cresce até o dobro do tamanho e para. Depois, “Verificar”.

Experimente você mesmo

using UnityEngine;

public class Grower : MonoBehaviour
{
    void Update()
    {
        // A cada clique: aumente 0.25 em cada eixo, até atingir o tamanho 2.
    }
}

Todas as lições de Fundamentos de Scripting no Unity

Pratique por conta própria: Playground de Unity