Advertisement
Guest User

transform

a guest
Jan 21st, 2020
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 6.12 KB | None | 0 0
  1. using UnityEngine;
  2. using UnityEngine.EventSystems;
  3.  
  4. public class Transformation_Functions : MonoBehaviour, IPointerDownHandler, IPointerUpHandler, IPointerClickHandler {
  5.  
  6.     public Direction direction;
  7.     public Action action;
  8.     public float Move_Speed = 3f;
  9.     bool pressing = false;
  10.     public static bool Can_Detect = true;
  11.     public AudioSource BTNAUDIO;
  12.     Transform T;
  13.     //Rigidbody R;
  14.  
  15.     public void OnPointerDown(PointerEventData eventData)
  16.     {
  17.         pressing = true;
  18.         Can_Detect = false;
  19.     }
  20.  
  21.     public void OnPointerUp(PointerEventData eventData)
  22.     {
  23.         pressing = false;
  24.         Can_Detect = true;
  25.     }
  26.  
  27.     void Update()
  28.     {
  29.         if (pressing)
  30.         {
  31.             if (GetClickedObject.LastClickedObject != null)
  32.             {
  33.                 if (DefaultTrackableEventHandler.MyBool)
  34.                 {
  35.                     T = GetClickedObject.LastClickedObject.transform;
  36.                     //R = GetClickedObject.LastClickedObject.GetComponent<Rigidbody>();
  37.                     switch (action)
  38.                     {
  39.                         case Action.Translate:
  40.                             switch (direction)
  41.                             {
  42.                                 case Direction.Right:
  43.                                     T.Translate(Vector3.right * Time.deltaTime * Move_Speed, Space.World);
  44.                                     //T.Translate(Vector3.right * Time.deltaTime * Move_Speed, Space.Self);
  45.                                     //R.AddForce(T.right * Time.deltaTime * Move_Speed);
  46.                                     break;
  47.                                 case Direction.Left:
  48.                                     T.Translate(Vector3.left * Time.deltaTime * Move_Speed, Space.World);
  49.                                     //T.Translate(Vector3.left * Time.deltaTime * Move_Speed, Space.Self);
  50.                                     //R.AddForce(-T.right * Time.deltaTime * Move_Speed);
  51.                                     break;
  52.                                 case Direction.Up:
  53.                                     T.Translate(Vector3.up * Time.deltaTime * Move_Speed, Space.World);
  54.                                     //T.Translate(Vector3.forward * Time.deltaTime * Move_Speed, Space.Self);
  55.                                     //R.AddForce(T.forward * Time.deltaTime * Move_Speed);
  56.                                     break;
  57.                                 case Direction.Down:
  58.                                     T.Translate(Vector3.down * Time.deltaTime * Move_Speed, Space.World);
  59.                                     //T.Translate(Vector3.back * Time.deltaTime * Move_Speed, Space.Self);
  60.                                     //R.AddForce(-T.forward * Time.deltaTime * Move_Speed);
  61.                                     break;
  62.                             }
  63.                             break;
  64.                         case Action.Rotate:
  65.                             switch (direction)
  66.                             {
  67.                                 case Direction.Right:
  68.                                     T.Rotate(-Vector3.up, Time.deltaTime * 90f, Space.World);
  69.                                     break;
  70.                                 case Direction.Left:
  71.                                     T.Rotate(Vector3.down, Time.deltaTime * -90f, Space.World);
  72.                                     break;
  73.                             }
  74.                             break;
  75.                         case Action.Scale_X:
  76.                             switch (direction)
  77.                             {
  78.                                 case Direction.Right:
  79.                                     T.localScale += new Vector3(0.3F, 0, 0) * Time.deltaTime;
  80.                                     break;
  81.                                 case Direction.Left:
  82.                                     if (T.localScale.x > 0)
  83.                                         T.localScale -= new Vector3(0.3F, 0, 0) * Time.deltaTime;
  84.                                     break;
  85.                             }
  86.                             break;
  87.                         case Action.Scale_Y:
  88.                             switch (direction)
  89.                             {
  90.                                 case Direction.Right:
  91.                                     T.localScale += new Vector3(0, 0.3F, 0) * Time.deltaTime;
  92.                                     break;
  93.                                 case Direction.Left:
  94.                                     if (T.localScale.y > 0)
  95.                                         T.localScale -= new Vector3(0, 0.3F, 0) * Time.deltaTime;
  96.                                     break;
  97.                             }
  98.                             break;
  99.                         case Action.Scale_Z:
  100.                             switch (direction)
  101.                             {
  102.                                 case Direction.Right:
  103.                                     T.localScale += new Vector3(0, 0, 0.3F) * Time.deltaTime;
  104.                                     break;
  105.                                 case Direction.Left:
  106.                                     if (T.localScale.z > 0)
  107.                                         T.localScale -= new Vector3(0, 0, 0.3F) * Time.deltaTime;
  108.                                     break;
  109.                             }
  110.                             break;
  111.                         case Action.Scale_all:
  112.                             switch (direction)
  113.                             {
  114.                                 case Direction.Right:
  115.                                     T.localScale += new Vector3(0.3F, 0.3F, 0.3F) * Time.deltaTime;
  116.                                     break;
  117.                                 case Direction.Left:
  118.                                     if (T.localScale.z > 0)
  119.                                         T.localScale -= new Vector3(0.3F, 0.3F, 0.3F) * Time.deltaTime;
  120.                                     break;
  121.                             }
  122.                             break;
  123.                     }
  124.                 }
  125.             }
  126.         }
  127.     }
  128.  
  129.     public void OnPointerClick(PointerEventData eventData)
  130.     {
  131.         BTNAUDIO.Play();
  132.     }
  133. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement