SmartBowController.cs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5. namespace DuckHunter
  6. {
  7. public class SmartBowController : MonoBehaviour
  8. {
  9. public static SmartBowController Instance;
  10. void Start() {
  11. Instance = this;
  12. SimulateMouseController.ins?.RemoveOpenLocker("NotGame");
  13. //InfraredDemo.running
  14. if (!AimHandler.ins.bRuning9Axis())
  15. {
  16. InfraredDemo.infraredCameraHelper.OnPositionUpdate += (p) =>
  17. {
  18. if (CrossHair.Instance) CrossHair.Instance.transform.position = p;
  19. };
  20. }
  21. else CameraToLook.ins.onParseRotation += OnRotationUpdate;
  22. }
  23. void OnDestroy() {
  24. if (Instance == this) Instance = null;
  25. }
  26. public void OnRotationUpdate(Quaternion rotation)
  27. {
  28. GameManager.Instance?.OnModuleRotationUpdate(rotation);
  29. }
  30. float _lastShootTime = 0;
  31. public void OnShooting(float speed)
  32. {
  33. if (Time.time == 0) return;
  34. if (Time.realtimeSinceStartup - _lastShootTime < 1) return;
  35. _lastShootTime = Time.realtimeSinceStartup;
  36. GameManager.Instance?.OnModuleShooting(speed,true);
  37. }
  38. public void ResetAim() {
  39. // AimHandler.ins.DoIdentity();
  40. AutoResetView.DoIdentity();
  41. }
  42. }
  43. }