H_SafeExperienceDrivingSystem/U3D_DrivingSystem/Assets/Script/Manaegr/GameFlowManager.cs

148 lines
5.9 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityStandardAssets.Vehicles.Car;
using XFrame.Core.UI;
using XFrame.Core.UIs;
public enum OperatingMode
{
SteeringWheel,
Keyboard
}
public class GameFlowManager : MonoBehaviour
{
public OperatingMode operatingMode = OperatingMode.SteeringWheel;
public static GameFlowManager instance;
[HideInInspector] public Scene scene;
private void Awake()
{
instance = this;
}
void Start()
{
//Display.displays[0].Activate();
//Screen.SetResolution(5120, 1440, true);
//Display.displays[1].Activate();
//Display.displays[1].SetParams(1920, 1080, 0, (1920 - 1080) / 2);
XUIPanel.ShowPanel<MemuPanel>();
XUIPanel.ShowPanel<DrivePanel>();
XUIPanels.ShowPanel<MemuPanels>();
XUIPanels.ShowPanel<DrivePanels>();
XUIRoot.Instance.gameObject.GetComponent<Canvas>().targetDisplay = 0;
XUIRoots.Instance.gameObject.GetComponent<Canvas>().targetDisplay = 1;
scene = SceneManager.GetActiveScene();
LogitechGSDK.LogiSteeringInitialize(false);
}
void Update()
{
LogitechGSDK.DIJOYSTATE2ENGINES wheel;
wheel = LogitechGSDK.LogiGetStateUnity(0);
for (int i = 0; i < 128; i++)
{
if (wheel.rgbButtons[i] == 128)
{
switch (i)
{
case 0:
Debug.Log("KeyCode.Joystick1Button0 方向盘 X 键" + i);
break;
case 1:
Debug.Log("KeyCode.Joystick1Button1 方向盘 □ 键" + i);
break;
case 2:
Debug.Log("KeyCode.Joystick1Button2 方向盘 ○ 键" + i);
break;
case 3:
Debug.Log("KeyCode.Joystick1Button3 方向盘 △ 键" + i);
break;
case 4:
Debug.Log("KeyCode.Joystick1Button4 方向盘 右拨片 键" + i);
break;
case 5:
Debug.Log("KeyCode.Joystick1Button5 方向盘 左拨片 键" + i);
break;
case 6:
SceneManager.LoadScene(scene.name);
Debug.Log("KeyCode.Joystick1Button6 方向盘 R2 键" + i);
break;
case 7:
GameObject.FindObjectOfType<CarUserControl>().SwitchView(false);
Debug.Log("KeyCode.Joystick1Button7 方向盘 L2 键" + i);
break;
case 8:
Debug.Log("KeyCode.Joystick1Button8 方向盘 SHARE 键" + i);
break;
case 9:
Debug.Log("KeyCode.Joystick1Button9 方向盘 OPTION 键" + i);
break;
case 10:
Debug.Log("KeyCode.Joystick1Butto10 方向盘 R3 键" + i);
break;
case 11:
GameObject.FindObjectOfType<CarUserControl>().SwitchView(true);
Debug.Log("KeyCode.Joystick1Button11 方向盘 L3 键" + i);
break;
case 12:
Debug.Log("KeyCode.Joystick1Button12 挡位 1 挡" + i);
break;
case 13:
Debug.Log("KeyCode.Joystick1Button13 挡位 2 挡" + i);
break;
case 14:
Debug.Log("KeyCode.Joystick1Button14 挡位 3 挡" + i);
break;
case 15:
Debug.Log("KeyCode.Joystick1Button15 挡位 4 挡" + i);
break;
case 16:
Debug.Log("KeyCode.Joystick1Button16 挡位 5 挡" + i);
break;
case 17:
Debug.Log("KeyCode.Joystick1Button17 挡位 6 挡" + i);
break;
case 18:
Debug.Log("KeyCode.Joystick1Button18 挡位 R 挡(倒挡)" + i);
break;
case 19:
Debug.Log("KeyCode.Joystick1Button19 方向盘 + 键" + i);
break;
case 20:
Debug.Log("KeyCode.Joystick1Button20 方向盘 - 键" + i);
break;
case 21:
Debug.Log("KeyCode.Joystick1Button21 方向盘 红色滚轮右滚 键" + i);
break;
case 22:
Debug.Log("KeyCode.Joystick1Button22 方向盘 红色滚轮左滚 键" + i);
break;
case 23:
if (DrivePanel.instance.Non_FeelCharge.transform.GetChild(0).gameObject.activeInHierarchy)
{
DrivePanel.instance..onClick.Invoke();
DrivePanels.instance..onClick.Invoke();
}
if (Trigger_Arrive.instance.isEnter)
{
ArrivePanel.instance.confirm.onClick.Invoke();
ArrivePanels.instance.confirm.onClick.Invoke();
}
Debug.Log("KeyCode.Joystick1Button23 方向盘 回车 键" + i);
break;
case 24:
Debug.Log("KeyCode.Joystick1Button24 方向盘 特殊标志键 键" + i);
break;
}
}
}
}
}