using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using DG.Tweening; using UnityEngine.SceneManagement; /* 游戏帮助界面(右侧方的辅助功能) */ public class GameAssistUIDoublePlayer : MonoBehaviour { [SerializeField] Material outlight; Button btnScaleAim; Button btnScaleShoot; public Action action_OnClickBtnIdentity; public static GameAssistUIDoublePlayer ins; [Header("公共相关参数")] [SerializeField] Button btnBack; //当前操作的用户 PlayerType currentPlayerType = PlayerType.FirstPlayer; [Header("1P相关参数")] [SerializeField] Button btnScaleAim1P; [SerializeField] Button btnScaleShoot1P; [SerializeField] Button btnCrosshair1P; [SerializeField] Button btnDoIdentity1P; [Header("2P相关参数")] [SerializeField] Button btnScaleAim2P; [SerializeField] Button btnScaleShoot2P; [SerializeField] Button btnCrosshair2P; [SerializeField] Button btnDoIdentity2P; void Awake() { ins = this; } public void onBtnBack() { AudioMgr.ins.PlayBtn(); SceneManager.LoadScene("Home", LoadSceneMode.Single); //GameMgr.ins.userGameAnalyse.showResultView(() => { // SceneManager.LoadScene("Home", LoadSceneMode.Single); //}); } void Start() { //返回主页 btnBack.onClick.AddListener(onBtnBack); //控制瞄准镜 btnScaleAim1P.onClick.AddListener(delegate () { AudioMgr.ins.PlayBtn(); currentPlayerType = PlayerType.FirstPlayer; if (btnScaleAim1P.GetComponentInChildren().material == outlight) { closeScaleAim(); } else { openScaleAim(); } }); btnScaleAim2P.onClick.AddListener(delegate () { AudioMgr.ins.PlayBtn(); currentPlayerType = PlayerType.SecondPlayer; if (btnScaleAim2P.GetComponentInChildren().material == outlight) { closeScaleAim(); } else { openScaleAim(); } }); //控制加速 btnScaleShoot1P.onClick.AddListener(delegate () { AudioMgr.ins.PlayBtn(); currentPlayerType = PlayerType.FirstPlayer; if (btnScaleShoot1P.GetComponentInChildren().material == outlight) { closeScaleShoot(); } else { openScaleShoot(); } }); btnScaleShoot2P.onClick.AddListener(delegate () { AudioMgr.ins.PlayBtn(); currentPlayerType = PlayerType.SecondPlayer; if (btnScaleShoot2P.GetComponentInChildren().material == outlight) { closeScaleShoot(); } else { openScaleShoot(); } }); defaultOpenScaleShoot(); //重置中心点 btnDoIdentity1P.onClick.AddListener(delegate () { if (btnDoIdentity1P.GetComponent().isLongPress) return; AudioMgr.ins.PlayBtn(); if (GameObject.Find("AutoResetViewNewLeft")) return; GameObject resetView = Instantiate(Resources.Load("AutoResetViewNew")); resetView.name = "AutoResetViewNewLeft"; AutoResetViewNew autoResetViewNewScript = resetView.GetComponent(); autoResetViewNewScript.setPosLeft(); autoResetViewNewScript.action_OnDestroy += () => { if (SceneManager.GetActiveScene().name == "InfraredGameDouble") { InfraredDemo._ins?.SetAdjustPointsOffset(PlayerType.FirstPlayer); } else { //使用旧模式重置1p AimHandler.ins?.DoIdentity(); } }; //action_OnClickBtnIdentity?.Invoke(); }); btnDoIdentity1P.gameObject.AddComponent().onLongPress += () => { AudioMgr.ins.PlayBtn(); if (SB_EventSystem.ins) SB_EventSystem.ins.AwakenSimulateMouse(); }; //重置中心点 btnDoIdentity2P.onClick.AddListener(delegate () { if (btnDoIdentity2P.GetComponent().isLongPress) return; AudioMgr.ins.PlayBtn(); if (GameObject.Find("AutoResetViewNewRight")) return; GameObject resetView = Instantiate(Resources.Load("AutoResetViewNew")); resetView.name = "AutoResetViewNewRight"; AutoResetViewNew autoResetViewNewScript = resetView.GetComponent(); autoResetViewNewScript.setPosRight(); autoResetViewNewScript.action_OnDestroy += () => { if (SceneManager.GetActiveScene().name == "InfraredGameDouble") { InfraredDemo._ins?.SetAdjustPointsOffset(PlayerType.SecondPlayer); } else { //使用新模式重置2p if (BluetoothAim.ins.getSmartBowHelper2P() != null) { BluetoothAim.ins.getSmartBowHelper2P().ResetAim(); } } }; //action_OnClickBtnIdentity?.Invoke(); }); btnDoIdentity2P.gameObject.AddComponent().onLongPress += () => { AudioMgr.ins.PlayBtn(); if (SB_EventSystem.ins) SB_EventSystem.ins.AwakenSimulateMouse(); }; if(btnCrosshair1P != null) InitCrosshair(PlayerType.FirstPlayer, btnCrosshair1P); if(btnCrosshair2P != null) InitCrosshair(PlayerType.SecondPlayer, btnCrosshair2P); // ------ 查看靶子 ------ //Transform targetView = this.transform.Find("TargetView"); //Button btnViewTarget = this.transform.Find("Button10").GetComponent