| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.SceneManagement;
- using JCUnityLib;
- using UnityEngine.UI;
- public class ViewMgr : ViewManager<ViewMgr>
- {
- protected override void OnInited()
- {
- CanvasScaler viewMgrCanvasScaler = gameObject.GetComponent<CanvasScaler>();
- viewMgrCanvasScaler.referenceResolution = new Vector2(2532, 1170);
- viewMgrCanvasScaler.screenMatchMode = CanvasScaler.ScreenMatchMode.MatchWidthOrHeight;
- viewMgrCanvasScaler.matchWidthOrHeight = 0f;
- Canvas viewCanvas = gameObject.GetComponent<Canvas>();
- viewCanvas.sortingOrder = 1;
- //设置视图组
- //SetViewGroup<HomeFrameView>(1);
- Debug.Log("初始化绑定ViewManager2.HideAllView");
- SceneManager.sceneUnloaded += OnSceneUnloaded;
- //SceneManager.sceneLoaded += OnSceneLoaded;
- }
- //以下名称的预制体通过SceneResourceManager获取
- HashSet<string> scenePrefabs = new HashSet<string>(new string[] {
- //Home
- "HomeView", "PKMatchView", "RoleSelectView"
- });
- protected override GameObject LoadViewPrefab(string viewName)
- {
- if (scenePrefabs.Contains(viewName)) return SceneResourceManager.Instance.GetPrefab(viewName);
- return base.LoadViewPrefab("Home/" + viewName);
- }
- void OnSceneUnloaded(Scene scene)
- {
- ViewManager2.HideAllView();
- if (scene.name == "InfraredGameDouble" || scene.name == "WildAttackDouble")
- {
- InfraredDemo._ins?.SetSinglePoint(true);
- Debug.Log("OnSceneUnloaded 取消设置单点模式");
- }
- }
- void OnSceneLoaded(Scene scene, LoadSceneMode loadSceneMode) {
- if (scene.name == "InfraredGameDouble" || scene.name == "WildAttackDouble") {
- //判断蓝牙连接状态,如果连接了两个,直接判断是否开启双点
- InfraredDemo._ins?.SetSinglePoint(false);
- Debug.Log("OnSceneLoaded 设置双点模式");
- //if (BluetoothAim.ins && BluetoothAim.ins.status == BluetoothStatusEnum.ConnectSuccess && BluetoothAim.ins.getSmartBowHelper2P().GetBluetoothStatus() == SmartBowSDK.BluetoothStatusEnum.Connected)
- //{
- // //如果存在两个蓝牙,则双点。
- // InfraredDemo._ins?.SetSinglePoint(true);
- // Debug.Log("OnSceneLoaded 设置双点模式");
- //}
- //else {
- // InfraredDemo._ins?.SetSinglePoint(false);
- // Debug.Log("OnSceneLoaded 设置单点模式");
- //}
- }
- }
- }
|