I am pasting my code below. This code is for a Tap Tap kind of game where you single tap and depending upon the position of x the player jumps to right or left along y axis (using mouse left buttons click). I am trying to develop an android game and what i want is to divide my screen into 2 halves right will have a right button and left will have a left button. so that when right side of the game is clicked on mobile the player jumps to right and vice versa. Kindly help me change this code for ui button code where there will be 2 ui buttons for right and left jump movement instead of mouse click button.
.
.
.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class PlayerController : MonoBehaviour {
[SerializeField] private float Xforce=1.5f;
[SerializeField] private float Yforce=6f;
private Rigidbody2D rb;
// Use this for initialization
void Awake () {
rb=GetComponent<Rigidbody2D>();
rb.isKinematic=true;
}
// Update is called once per frame
void Update () {
if(Input.GetMouseButtonDown(0))
{
rb.isKinematic=false;
Vector2 MousePos=Camera.main.ScreenToWorldPoint(Input.mousePosition);
rb.velocity=Vector2.zero;
if(MousePos.x>0)
{
rb.velocity=new Vector2(Xforce,Yforce);
}
else
{
rb.velocity=new Vector2(-Xforce,Yforce);
}
}
}
private void OnCollisionEnter2D(Collision2D collision)
{
if(collision.collider.tag!= "Barrier")
{
rb.freezeRotation=false;
DeadEffect();
StartCoroutine(LevelReset());
}
}
void DeadEffect()
{
this.transform.GetComponent<BoxCollider2D>().isTrigger=true;
rb.velocity=Vector2.zero;
rb.velocity=-Vector2.up*10f;
}
IEnumerator LevelReset()
{
this.enabled=false;
yield return new WaitForSeconds(1f);
Application.LoadLevel(0);
}
}