static function GetButton(buttonName: string): bool;
static bool GetButton(string buttonName);
static def GetButton(buttonName as string) as bool

Returns true while the virtual button identified by buttonName is held down.

Think auto fire - this will return true as long as the button is held down.

Use this only when implementing action like events IE: shooting a weapon.
Use Input.GetAxis for any kind of movement behaviour.
	// Instantiates a projectile every 0.5 seconds,
	// if the Fire1 button (default is Ctrl) is pressed.

var projectile : GameObject; var fireRate : float = 0.5; private var nextFire : float = 0.0; function Update () { if (Input.GetButton ("Fire1") && Time.time > nextFire) { nextFire = Time.time + fireRate; var clone : GameObject = Instantiate(projectile, transform.position, transform.rotation) as GameObject; } }
using UnityEngine;
using System.Collections;

public class Example : MonoBehaviour {
    public GameObject projectile;
    public float fireRate = 0.5F;
    private float nextFire = 0.0F;
    void Update() {
        if (Input.GetButton("Fire1") && Time.time > nextFire) {
            nextFire = Time.time + fireRate;
            GameObject clone = Instantiate(projectile, transform.position, transform.rotation) as GameObject as GameObject;
import UnityEngine
import System.Collections

public class Example(MonoBehaviour):

	public projectile as GameObject

	public fireRate as float = 0.5F

	private nextFire as float = 0.0F

	def Update() as void:
		if Input.GetButton('Fire1') and (Time.time > nextFire):
			nextFire = (Time.time + fireRate)
			clone as GameObject = ((Instantiate(projectile, transform.position, transform.rotation) as GameObject) as GameObject)