Botones Tactiles para movil

Bien aquí os voy e enseñas unos conceptos básicos para poner botones táctiles a nuestro juego para android

bien lo primero que vamos hacer es crear un Canvas. UI y Canvas

así creamos los 3 botones que vamos a necesitar

Y nos saldra una cosa así lo que vamos hacer sera cambiarlo

Bien aquí le pondríamos la imagen al botón que en mi caso sera la cara del  muñeco

hay tenemos nuestro muñeco lo colocariamos y borrariamos el Text

bien aquí tendríamos los tres botones derecha izquierda y salto. ahora creariamos un Script en nuestro player en el «Personaje»y comenzaríamos a programar

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class movimientoboton : MonoBehaviour {
	public float speedX;
	public float jumSpeddeY;

	bool facingRight, juping;
	float speed;
	Animator anim;
	Rigidbody2D rb;

void Start () {
		anim = GetComponent<Animator> ();
		rb = GetComponent<Rigidbody2D> ();	
		facingRight = true;
void Update () {

		MovePlayer(speed);

		if (Input.GetKeyDown (KeyCode.LeftArrow)) {
			speed = -speedX;
		}

		if (Input.GetKeyUp (KeyCode.LeftArrow)) {
			speed = 0;

		}
		if (Input.GetKeyDown (KeyCode.RightArrow)) {
			speed = speedX;
		}

		if (Input.GetKeyUp (KeyCode.RightArrow)) {
			speed = 0;
		        juping = true;
			rb.AddForce (new Vector2 (rb.velocity.x, jumSpeddeY));
                   }


		}

	void MovePlayer(float playerSpeed){
		rb.velocity = new Vector3 (speed, rb.velocity.y, 0);

	}
         public void WalkLeft(){
		speed = -speedX;
		;

	}

	public void WalkRight(){

		speed = speedX;

Bien ahora lo que vamos hacer es programar el botón

public void WalkLeft(){

speed = -speedX;

GetComponent<SpriteRenderer> ().flipX = false;

vamos de nuevo a Unity

vamos al botón derehca le damos a

Add Component y Event Trigger (Script)

y le asignamos el player

y hacemos lo mismo que el boton que nos queda de direccion. despues vamos asignarle una  velocidad

una vez hecho esto nuestro personaje iría derecha he izquierdaAhora vamos hacer lo siguientes hacer que nuestro personaje mire hacia la dirección dónde se dirige

public void WalkLeft(){
		speed = -speedX;
		GetComponent<SpriteRenderer> ().flipX = false;

	}

	public void WalkRight(){

		speed = speedX;
		GetComponent<SpriteRenderer> ().flipX = true;
	}

Bien con esto conseguiriamos que nuestro personaje mire en la direccion hacia dónde camina

y justo debajo pondriamos lo siguiente

}

public void StopMoving(){
speed = 0;

}

y nos vamos al boton derecha y izquieda

Bien y en el botón tanto derecha como izquierda hacemos lo siguiente crearemos otro Event Trigger (Script) y Pointer Up (BaseEvenData) colocamos player y asignamos el StopMoving. tanto derecha como izquierda ahora asignaremos el botón de salto y hacemos exactamente lo mismo

}

public void jump(){
juping = true;
rb.AddForce (new Vector2 (rb.velocity.x, jumSpeddeY));

}
}

sin embargo a este hacemos lo mismo que hemos hecho con los botones derecha he izquierda pero sin asignarle el Stop

2 comentarios

  1. Hi there, just became aware of your blog through Google, and
    found that it is really informative. I’m gonna watch out
    for brussels. I’ll be grateful if you continue this in future.
    Numerous people will be benefited from your writing.
    Cheers!

  2. I’m really inspired with your writing talents and also with the format in your weblog.
    Is that this a paid subject or did you customize it yourself?
    Either way stay up the excellent high quality writing,
    it is uncommon to see a nice weblog like this
    one nowadays..

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *