Vickylane

TouchScript

Jul 7th, 2015
413
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.36 KB | None | 0 0
  1. using UnityEngine;
  2. using System.Collections;
  3.  
  4. public class TouchController : MonoBehaviour {
  5.  
  6.     public GameObject joypadBase1;
  7.     public GameObject joypadStick1;
  8.     public GameObject joypadBase2;
  9.     public GameObject joypadStick2;
  10.  
  11.     private int screenWidth;
  12.     private int screenHeight;
  13.     private bool[] startedLeft = {true,true};
  14.     private int[] count = {0,0};
  15.     public Camera camera;
  16.  
  17.     void Start ()
  18.     {
  19.         screenWidth = Screen.width;
  20.         screenHeight = Screen.height;
  21.         //joypadBase1.transform.position = camera.ScreenToWorldPoint(new Vector3(screenWidth*0.15f,screenHeight*0.25f,1));
  22.         //joypadBase2.transform.position = camera.ScreenToWorldPoint(new Vector3(screenWidth*0.85f,screenHeight*0.25f,1));
  23.        
  24.         joypadBase1.transform.position = camera.ScreenToWorldPoint(new Vector3(screenWidth*0.15f,screenHeight*0.25f,1));
  25.         joypadBase2.transform.position = camera.ScreenToWorldPoint(new Vector3(screenWidth*0.85f,screenHeight*0.25f,1));
  26.     }
  27.     void Update ()
  28.     {
  29.         if(Input.touchCount > 0)
  30.         {
  31.             if(Input.GetTouch (0).phase == TouchPhase.Began)
  32.             {
  33.                 if(Input.GetTouch (0).position.x < screenWidth/2)
  34.                 {
  35.                     joypadBase1.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(0).position.x,Input.GetTouch(0).position.y,1));
  36.                     startedLeft[0] = true;
  37.                     Debug.Log("Zero is now left");
  38.                 }
  39.                 if(Input.GetTouch (0).position.x >= screenWidth/2)
  40.                 {
  41.                     joypadBase2.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(0).position.x,Input.GetTouch(0).position.y,1));
  42.                     startedLeft[0] = false;
  43.                     Debug.Log("Zero is now right");
  44.                 }
  45.             }
  46.             if(Input.GetTouch (0).phase == TouchPhase.Moved)
  47.             {
  48.                 if(Input.GetTouch (0).position.x < screenWidth/2)
  49.                 {
  50.                     if(startedLeft[0] == false)             //right->left transition
  51.                     {
  52.                         //Debug.Log("Right->Left");
  53.                         joypadStick2.transform.localPosition = new Vector3(0,0,0);
  54.                         startedLeft[0] = true;
  55.                         joypadBase1.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(0).position.x,Input.GetTouch(0).position.y,1));
  56.                     }
  57.                     joypadStick1.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(0).position.x,Input.GetTouch(0).position.y,1));
  58.                 }
  59.                 if(Input.GetTouch (0).position.x >= screenWidth/2)
  60.                 {
  61.                     if(startedLeft[0] == true)                  //left->right transition
  62.                     {
  63.                         //Debug.Log("Left->Right");
  64.                         joypadStick1.transform.localPosition = new Vector3(0,0,0);
  65.                         startedLeft[0] = false;
  66.                         joypadBase2.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(0).position.x,Input.GetTouch(0).position.y,1));
  67.                     }
  68.                     joypadStick2.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(0).position.x,Input.GetTouch(0).position.y,1));
  69.                 }
  70.             }
  71.             if(Input.GetTouch (0).phase == TouchPhase.Ended || Input.GetTouch (0).phase == TouchPhase.Canceled)
  72.             {
  73.                 if(Input.GetTouch (0).position.x < screenWidth/2)
  74.                 {
  75.                     joypadStick1.transform.localPosition = new Vector3(0,0,0);
  76.                 }
  77.                 if(Input.GetTouch (0).position.x >= screenWidth/2)
  78.                 {
  79.                     joypadStick2.transform.localPosition = new Vector3(0,0,0);
  80.                 }
  81.             }
  82.             if(Input.touchCount == 2)
  83.             {
  84.                 if(Input.GetTouch (1).phase == TouchPhase.Began)
  85.                 {
  86.                     if(Input.GetTouch (1).position.x < screenWidth/2)
  87.                     {
  88.                         joypadBase1.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(1).position.x,Input.GetTouch(1).position.y,1));
  89.                         startedLeft[1] = true;                 
  90.                         Debug.Log("One is now left");
  91.                     }
  92.                     if(Input.GetTouch (1).position.x >= screenWidth/2)
  93.                     {
  94.                         joypadBase2.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(1).position.x,Input.GetTouch(1).position.y,1));
  95.                         startedLeft[1] = false;
  96.                         Debug.Log("One is now right");
  97.                     }
  98.                 }
  99.                 if(Input.GetTouch (1).phase == TouchPhase.Moved)
  100.                 {
  101.                     if(Input.GetTouch (1).position.x < screenWidth/2)
  102.                     {
  103.                         if(startedLeft[1] == false)             //right->left transition
  104.                         {
  105.                             //Debug.Log("Right->Left");
  106.                             joypadStick2.transform.localPosition = new Vector3(0,0,0);
  107.                             startedLeft[1] = true;
  108.                             joypadBase1.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(1).position.x,Input.GetTouch(1).position.y,1));
  109.                         }
  110.                         joypadStick1.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(1).position.x,Input.GetTouch(1).position.y,1));
  111.                     }
  112.                     if(Input.GetTouch (1).position.x >= screenWidth/2)
  113.                     {
  114.                         if(startedLeft[1] == true)                  //left->right transition
  115.                         {
  116.                             //Debug.Log("Left->Right");
  117.                             joypadStick1.transform.localPosition = new Vector3(0,0,0);
  118.                             startedLeft[1] = false;
  119.                             joypadBase2.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(1).position.x,Input.GetTouch(1).position.y,1));
  120.                         }
  121.                         joypadStick2.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.GetTouch(1).position.x,Input.GetTouch(1).position.y,1));
  122.                     }
  123.                 }
  124.                 if(Input.GetTouch (1).phase == TouchPhase.Ended || Input.GetTouch (1).phase == TouchPhase.Canceled)
  125.                 {
  126.                     if(Input.GetTouch (1).position.x < screenWidth/2)
  127.                     {
  128.                         joypadStick1.transform.localPosition = new Vector3(0,0,0);
  129.                     }
  130.                     if(Input.GetTouch (1).position.x >= screenWidth/2)
  131.                     {
  132.                         joypadStick2.transform.localPosition = new Vector3(0,0,0);
  133.                     }
  134.                 }
  135.             }
  136.         }
  137.     }
  138. }
Advertisement
Add Comment
Please, Sign In to add comment