Guest User

Untitled

a guest
Apr 23rd, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.67 KB | None | 0 0
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4.  
  5. public class TestFollow : MonoBehaviour {
  6.  
  7. private Transform _bullet;
  8. private Vector2 _screenSize;
  9. private float _interval = 10;
  10. public Sprite sp1,sp2;
  11. SpriteRenderer sr;
  12. bool mouseClicked = false;
  13. public float moveSpeed = 10f;
  14. public float speed;
  15.  
  16.  
  17. // Use this for initialization
  18.  
  19. void Start ()
  20. {
  21. sr = gameObject.GetComponent<SpriteRenderer> ();
  22.  
  23. if (sr.sprite == null) // if the sprite on spriteRenderer is null then
  24. sr.sprite = sp1; // set the sprite to sprite1
  25.  
  26. _bullet = transform;
  27. _screenSize = new Vector2(Screen.width, Screen.height);
  28.  
  29.  
  30. }
  31.  
  32. public void Update ()
  33. {
  34.  
  35. transform.position = Vector2.Lerp (transform.position, Camera.main.ScreenToWorldPoint (Input.mousePosition), moveSpeed);
  36.  
  37. Vector3 difference = Camera.main.ScreenToWorldPoint (Input.mousePosition) - transform.position;
  38. difference.Normalize ();
  39.  
  40. {
  41. if (Input.GetMouseButtonDown (0)) {
  42. Debug.Log ("Left Mouse Button was pressed");
  43. moveSpeed = 0f;
  44. if (sr.sprite == sp1) { // if the spriteRenderer sprite = sprite1 then change to sprite2
  45. sr.sprite = sp2;
  46.  
  47. }
  48. mouseClicked = true; //register that the mouse has been clicked and the sprite is changed to sprite2
  49. }
  50. }
  51.  
  52.  
  53. if (mouseClicked) { //checks if sprite has already been changed
  54.  
  55. // Check for every 10 frames, reduce _interval if you want to check more often.
  56. if (Time.frameCount % _interval == 0) {
  57. // Use debug to learn mouse position, you can disable this if you want.
  58. Debug.Log (Input.mousePosition);
  59.  
  60. // Mouse on Top Right screen
  61. _bullet.localEulerAngles = Vector3.zero;
  62.  
  63. // Mouse on Bottom Right, else Mouse on Bottom Left else Mouse on Top Left
  64. if (Input.mousePosition.x > _screenSize.x / 2 && Input.mousePosition.y < _screenSize.y / 2)
  65. _bullet.Rotate (Vector3.forward, -90, Space.Self);
  66. else if (Input.mousePosition.x < _screenSize.x / 2 && Input.mousePosition.y < _screenSize.y / 2)
  67. _bullet.Rotate (Vector3.forward, -180, Space.Self);
  68. else if (Input.mousePosition.x < _screenSize.x / 2 && Input.mousePosition.y > _screenSize.y / 2)
  69. _bullet.Rotate (Vector3.forward, 90, Space.Self);
  70. }
  71. }
  72.  
  73. {
  74.  
  75. if (Input.GetMouseButton(1)) {
  76. Debug.Log ("Pressed secondary button.");
  77.  
  78. _bullet.transform.position += (transform.right + _bullet.transform.up).normalized * speed * Time.deltaTime;
  79. }
  80. }
  81. }
  82. }
Add Comment
Please, Sign In to add comment