MouseGUI.cs 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. // Shatter Toolkit
  2. // Copyright 2015 Gustav Olsson
  3. using UnityEngine;
  4. using ShatterToolkit.Helpers;
  5. namespace ShatterToolkit.Examples
  6. {
  7. [RequireComponent(typeof(MouseForce), typeof(MouseSplit), typeof(MouseShatter))]
  8. public class MouseGUI : MonoBehaviour
  9. {
  10. public int defaultSelection = 0;
  11. protected MouseForce mouseForce;
  12. protected MouseSplit mouseSplit;
  13. protected MouseShatter mouseShatter;
  14. protected int toolbarSelection = 0;
  15. protected System.String[] toolbarLabels = { "Mouse force (Click and drag)", "Mouse split (Click and drag, release)", "Mouse shatter (Click)" };
  16. public void Awake()
  17. {
  18. mouseForce = GetComponent<MouseForce>();
  19. mouseSplit = GetComponent<MouseSplit>();
  20. mouseShatter = GetComponent<MouseShatter>();
  21. toolbarSelection = defaultSelection;
  22. SelectTool();
  23. }
  24. public void OnGUI()
  25. {
  26. toolbarSelection = GUI.Toolbar(new Rect(10, 10, Screen.width - 20, 20), toolbarSelection, toolbarLabels);
  27. if (GUI.changed)
  28. {
  29. SelectTool();
  30. }
  31. }
  32. protected void SelectTool()
  33. {
  34. mouseForce.enabled = false;
  35. mouseSplit.enabled = false;
  36. mouseShatter.enabled = false;
  37. if (toolbarSelection == 0)
  38. {
  39. mouseForce.enabled = true;
  40. }
  41. else if (toolbarSelection == 1)
  42. {
  43. mouseSplit.enabled = true;
  44. }
  45. else if (toolbarSelection == 2)
  46. {
  47. mouseShatter.enabled = true;
  48. }
  49. }
  50. }
  51. }