using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace DuckHunter { public class SmartBowController : MonoBehaviour { public static SmartBowController Instance; void Start() { Instance = this; SimulateMouseController.ins?.RemoveOpenLocker("NotGame"); //InfraredDemo.running if (AimHandler.ins) { if (!AimHandler.ins.bRuning9Axis()) { InfraredDemo.infraredCameraHelper.OnPositionUpdate += OnVec2PositionUpdate; } else CameraToLook.ins.onParseRotation += OnRotationUpdate; } } void OnDestroy() { if (Instance == this) Instance = null; //destroy if (AimHandler.ins) { if (!AimHandler.ins.bRuning9Axis()) { InfraredDemo.infraredCameraHelper.OnPositionUpdate -= OnVec2PositionUpdate; } else CameraToLook.ins.onParseRotation -= OnRotationUpdate; } } public void OnRotationUpdate(Quaternion rotation) { GameManager.Instance?.OnModuleRotationUpdate(rotation); } public void OnVec2PositionUpdate(Vector2 p, Vector2 cameraLocation) { if (CrossHair.Instance) CrossHair.Instance.transform.position = p; } float _lastShootTime = 0; public void OnShooting(float speed) { if (Time.time == 0) return; //野鸭间隔时间 float interval = GlobalData.MyDeviceMode == DeviceMode.Gun?0.2f:1f; if (Time.realtimeSinceStartup - _lastShootTime < interval) return; _lastShootTime = Time.realtimeSinceStartup; GameManager.Instance?.OnModuleShooting(speed,true); } public void ResetAim() { // AimHandler.ins.DoIdentity(); AutoResetView.DoIdentity(); } } }