From f7633ea3416ed8c851918bf31b28611cbe24c205 Mon Sep 17 00:00:00 2001 From: sin365 <353374337@qq.com> Date: Thu, 6 Mar 2025 23:11:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=81=E8=A3=85GUI=E8=99=9A=E6=8B=9F?= =?UTF-8?q?=E6=8C=89=E9=94=AE=E5=8A=9F=E8=83=BD=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AxiInput/AxiInputUGUIHandleBase.cs | 27 -- ...Settings.meta => AxiInputSP.Settings.meta} | 0 .../ColecoVisionMultiKeysSetting.cs | 2 +- .../ColecoVisionMultiKeysSetting.cs.meta | 0 .../GameBoyColorMultiKeysSetting.cs | 2 +- .../GameBoyColorMultiKeysSetting.cs.meta | 0 .../GameBoyMultiKeysSetting.cs | 2 +- .../GameBoyMultiKeysSetting.cs.meta | 0 .../GameGearMultiKeysSetting.cs | 2 +- .../GameGearMultiKeysSetting.cs.meta | 0 .../GamingMultiKeysSetting.cs | 2 +- .../GamingMultiKeysSetting.cs.meta | 0 .../MasterSystemMultiKeysSetting.cs | 2 +- .../MasterSystemMultiKeysSetting.cs.meta | 0 .../NESMultiKeysSetting.cs | 3 +- .../NESMultiKeysSetting.cs.meta | 0 .../SC3000MultiKeysSetting.cs | 2 +- .../SC3000MultiKeysSetting.cs.meta | 0 .../SG1000MultiKeysSetting.cs | 2 +- .../SG1000MultiKeysSetting.cs.meta | 0 .../UMAMEMultiKeysSetting.cs | 2 +- .../UMAMEMultiKeysSetting.cs.meta | 0 .../XMBMultiKeysSetting.cs | 2 +- .../XMBMultiKeysSetting.cs.meta | 0 .../{AxiInput.meta => AxiInputSP.meta} | 0 .../AxiInput.Struct.cs | 2 +- .../AxiInput.Struct.cs.meta | 0 .../{AxiInput => AxiInputSP}/AxiInputEx.cs | 6 +- .../AxiInputEx.cs.meta | 0 .../AxiInputUGUICenter.cs.meta | 0 .../AxiInputUGUIHandle.cs.meta} | 0 .../Axis}/AxiInputAxisCenter.cs | 4 +- .../Axis}/AxiInputAxisCenter.cs.meta | 0 .../{Common => AxiInputSP}/PC_XBOXKEY.cs | 2 +- .../{Common => AxiInputSP}/PSVitaKey.cs | 2 +- .../UGUI}/AxiInputUGUICenter.cs | 22 +- .../AxiInputSP/UGUI/AxiInputUGUIHandle.cs | 40 +++ .../AppMain/AxiInputSP/UGUI/AxiIptButton.cs | 92 +++++++ .../NesEmulator/NesControllerMapper.cs | 260 +++++++++--------- .../IkeyMapperChanger/GamingChanger.cs | 4 +- .../IkeyMapperChanger/NormalChanger.cs | 4 +- .../Assets/Script/AppMain/Manager/AppInput.cs | 8 +- .../UI/CommandDispatcher/CommandListener.cs | 5 +- 43 files changed, 300 insertions(+), 201 deletions(-) delete mode 100644 AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputUGUIHandleBase.cs rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings.meta => AxiInputSP.Settings.meta} (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/ColecoVisionMultiKeysSetting.cs (99%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/ColecoVisionMultiKeysSetting.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/GameBoyColorMultiKeysSetting.cs (98%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/GameBoyColorMultiKeysSetting.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/GameBoyMultiKeysSetting.cs (98%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/GameBoyMultiKeysSetting.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/GameGearMultiKeysSetting.cs (99%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/GameGearMultiKeysSetting.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/GamingMultiKeysSetting.cs (96%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/GamingMultiKeysSetting.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/MasterSystemMultiKeysSetting.cs (99%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/MasterSystemMultiKeysSetting.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/NESMultiKeysSetting.cs (99%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/NESMultiKeysSetting.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/SC3000MultiKeysSetting.cs (99%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/SC3000MultiKeysSetting.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/SG1000MultiKeysSetting.cs (99%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/SG1000MultiKeysSetting.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/UMAMEMultiKeysSetting.cs (99%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/UMAMEMultiKeysSetting.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/XMBMultiKeysSetting.cs (98%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.Settings => AxiInputSP.Settings}/XMBMultiKeysSetting.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput.meta => AxiInputSP.meta} (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput => AxiInputSP}/AxiInput.Struct.cs (96%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput => AxiInputSP}/AxiInput.Struct.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput => AxiInputSP}/AxiInputEx.cs (96%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput => AxiInputSP}/AxiInputEx.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput => AxiInputSP}/AxiInputUGUICenter.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput/AxiInputUGUIHandleBase.cs.meta => AxiInputSP/AxiInputUGUIHandle.cs.meta} (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput => AxiInputSP/Axis}/AxiInputAxisCenter.cs (97%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput => AxiInputSP/Axis}/AxiInputAxisCenter.cs.meta (100%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{Common => AxiInputSP}/PC_XBOXKEY.cs (95%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{Common => AxiInputSP}/PSVitaKey.cs (96%) rename AxibugEmuOnline.Client/Assets/Script/AppMain/{AxiInput => AxiInputSP/UGUI}/AxiInputUGUICenter.cs (74%) create mode 100644 AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/UGUI/AxiInputUGUIHandle.cs create mode 100644 AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/UGUI/AxiIptButton.cs diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputUGUIHandleBase.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputUGUIHandleBase.cs deleted file mode 100644 index ed1f3990..00000000 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputUGUIHandleBase.cs +++ /dev/null @@ -1,27 +0,0 @@ -using AxibugEmuOnline.Client.Manager; -using System; - -namespace Assets.Script.AppMain.AxiInput -{ - public abstract class AxiInputUGUIHandleBase : IDisposable - { - public int Handle { get; private set; } - public AxiInputUGuiBtnType UguiBtnType { get; private set; } - - public AxiInputUGUIHandleBase(AxiInputUGuiBtnType uguiBtnType) - { - - Handle = AxiInputUGUICenter.GetNextSeed(); - this.UguiBtnType = uguiBtnType; - AxiInputUGUICenter.RegHandle(this); - } - public abstract bool GetKeyDown(); - public abstract bool GetKey(); - public abstract bool GetKeyUp(); - - public void Dispose() - { - AxiInputUGUICenter.UnregHandle(this); - } - } -} diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/ColecoVisionMultiKeysSetting.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/ColecoVisionMultiKeysSetting.cs similarity index 99% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/ColecoVisionMultiKeysSetting.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/ColecoVisionMultiKeysSetting.cs index d8781b9b..c3fd560c 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/ColecoVisionMultiKeysSetting.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/ColecoVisionMultiKeysSetting.cs @@ -1,7 +1,7 @@ using AxibugEmuOnline.Client.Manager; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput.Settings +namespace AxiInputSP.Setting { public class ColecoVisionMultiKeysSetting : MultiKeysSettingBase { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/ColecoVisionMultiKeysSetting.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/ColecoVisionMultiKeysSetting.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/ColecoVisionMultiKeysSetting.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/ColecoVisionMultiKeysSetting.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameBoyColorMultiKeysSetting.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameBoyColorMultiKeysSetting.cs similarity index 98% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameBoyColorMultiKeysSetting.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameBoyColorMultiKeysSetting.cs index ee135cf6..2edbae4c 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameBoyColorMultiKeysSetting.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameBoyColorMultiKeysSetting.cs @@ -1,7 +1,7 @@ using AxibugEmuOnline.Client.Manager; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput.Settings +namespace AxiInputSP.Setting { public class GameBoyColorMultiKeysSetting : MultiKeysSettingBase { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameBoyColorMultiKeysSetting.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameBoyColorMultiKeysSetting.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameBoyColorMultiKeysSetting.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameBoyColorMultiKeysSetting.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameBoyMultiKeysSetting.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameBoyMultiKeysSetting.cs similarity index 98% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameBoyMultiKeysSetting.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameBoyMultiKeysSetting.cs index 7c5fb01c..3775c27d 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameBoyMultiKeysSetting.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameBoyMultiKeysSetting.cs @@ -1,7 +1,7 @@ using AxibugEmuOnline.Client.Manager; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput.Settings +namespace AxiInputSP.Setting { public class GameBoyMultiKeysSetting : MultiKeysSettingBase { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameBoyMultiKeysSetting.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameBoyMultiKeysSetting.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameBoyMultiKeysSetting.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameBoyMultiKeysSetting.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameGearMultiKeysSetting.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameGearMultiKeysSetting.cs similarity index 99% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameGearMultiKeysSetting.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameGearMultiKeysSetting.cs index 5e7dc5fd..ea895f7d 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameGearMultiKeysSetting.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameGearMultiKeysSetting.cs @@ -1,7 +1,7 @@ using AxibugEmuOnline.Client.Manager; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput.Settings +namespace AxiInputSP.Setting { public class GameGearMultiKeysSetting : MultiKeysSettingBase { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameGearMultiKeysSetting.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameGearMultiKeysSetting.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GameGearMultiKeysSetting.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GameGearMultiKeysSetting.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GamingMultiKeysSetting.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GamingMultiKeysSetting.cs similarity index 96% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GamingMultiKeysSetting.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GamingMultiKeysSetting.cs index 91e3f459..a0f060ae 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GamingMultiKeysSetting.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GamingMultiKeysSetting.cs @@ -3,7 +3,7 @@ using AxibugEmuOnline.Client.Common; using AxibugEmuOnline.Client.Manager; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput.Settings +namespace AxiInputSP.Setting { public class GamingMultiKeysSetting : MultiKeysSettingBase { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GamingMultiKeysSetting.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GamingMultiKeysSetting.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/GamingMultiKeysSetting.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/GamingMultiKeysSetting.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/MasterSystemMultiKeysSetting.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/MasterSystemMultiKeysSetting.cs similarity index 99% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/MasterSystemMultiKeysSetting.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/MasterSystemMultiKeysSetting.cs index de8d7491..b471b7c8 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/MasterSystemMultiKeysSetting.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/MasterSystemMultiKeysSetting.cs @@ -2,7 +2,7 @@ using System; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput.Settings +namespace AxiInputSP.Setting { [Flags] public enum EssgeeSingleKey : ushort diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/MasterSystemMultiKeysSetting.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/MasterSystemMultiKeysSetting.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/MasterSystemMultiKeysSetting.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/MasterSystemMultiKeysSetting.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/NESMultiKeysSetting.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/NESMultiKeysSetting.cs similarity index 99% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/NESMultiKeysSetting.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/NESMultiKeysSetting.cs index e8aa0115..1a361408 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/NESMultiKeysSetting.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/NESMultiKeysSetting.cs @@ -1,8 +1,9 @@ using AxibugEmuOnline.Client.Manager; +using AxiInputSP; using UnityEngine; using VirtualNes.Core; -namespace Assets.Script.AppMain.AxiInput.Settings +namespace AxiInputSP.Setting { public class NESMultiKeysSetting : MultiKeysSettingBase { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/NESMultiKeysSetting.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/NESMultiKeysSetting.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/NESMultiKeysSetting.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/NESMultiKeysSetting.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/SC3000MultiKeysSetting.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/SC3000MultiKeysSetting.cs similarity index 99% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/SC3000MultiKeysSetting.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/SC3000MultiKeysSetting.cs index 9bafd17f..d1c6f5ee 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/SC3000MultiKeysSetting.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/SC3000MultiKeysSetting.cs @@ -1,7 +1,7 @@ using AxibugEmuOnline.Client.Manager; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput.Settings +namespace AxiInputSP.Setting { public class SC3000MultiKeysSetting : MultiKeysSettingBase { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/SC3000MultiKeysSetting.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/SC3000MultiKeysSetting.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/SC3000MultiKeysSetting.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/SC3000MultiKeysSetting.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/SG1000MultiKeysSetting.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/SG1000MultiKeysSetting.cs similarity index 99% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/SG1000MultiKeysSetting.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/SG1000MultiKeysSetting.cs index 2324e159..30d8e877 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/SG1000MultiKeysSetting.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/SG1000MultiKeysSetting.cs @@ -1,7 +1,7 @@ using AxibugEmuOnline.Client.Manager; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput.Settings +namespace AxiInputSP.Setting { public class SG1000MultiKeysSetting : MultiKeysSettingBase { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/SG1000MultiKeysSetting.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/SG1000MultiKeysSetting.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/SG1000MultiKeysSetting.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/SG1000MultiKeysSetting.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/UMAMEMultiKeysSetting.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/UMAMEMultiKeysSetting.cs similarity index 99% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/UMAMEMultiKeysSetting.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/UMAMEMultiKeysSetting.cs index 0e8c96b0..3270141a 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/UMAMEMultiKeysSetting.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/UMAMEMultiKeysSetting.cs @@ -1,7 +1,7 @@ using AxibugEmuOnline.Client.Manager; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput.Settings +namespace AxiInputSP.Setting { public enum UMAMEKSingleKey { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/UMAMEMultiKeysSetting.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/UMAMEMultiKeysSetting.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/UMAMEMultiKeysSetting.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/UMAMEMultiKeysSetting.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/XMBMultiKeysSetting.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/XMBMultiKeysSetting.cs similarity index 98% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/XMBMultiKeysSetting.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/XMBMultiKeysSetting.cs index 95734be6..6901b197 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/XMBMultiKeysSetting.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/XMBMultiKeysSetting.cs @@ -3,7 +3,7 @@ using AxibugEmuOnline.Client.Common; using AxibugEmuOnline.Client.Manager; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput.Settings +namespace AxiInputSP.Setting { public class XMBMultiKeysSetting : MultiKeysSettingBase { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/XMBMultiKeysSetting.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/XMBMultiKeysSetting.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.Settings/XMBMultiKeysSetting.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.Settings/XMBMultiKeysSetting.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInput.Struct.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInput.Struct.cs similarity index 96% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInput.Struct.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInput.Struct.cs index 3d874383..e6366f25 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInput.Struct.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInput.Struct.cs @@ -2,7 +2,7 @@ using System.Runtime.InteropServices; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput +namespace AxiInputSP { [StructLayout(LayoutKind.Explicit, Size = 8)] public struct AxiInput diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInput.Struct.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInput.Struct.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInput.Struct.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInput.Struct.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputEx.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInputEx.cs similarity index 96% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputEx.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInputEx.cs index 3caf9a95..32b44d88 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputEx.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInputEx.cs @@ -1,6 +1,8 @@ -using UnityEngine; +using AxiInputSP.Axis; +using AxiInputSP.UGUI; +using UnityEngine; -namespace Assets.Script.AppMain.AxiInput +namespace AxiInputSP { public static class AxiInputEx { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputEx.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInputEx.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputEx.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInputEx.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputUGUICenter.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInputUGUICenter.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputUGUICenter.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInputUGUICenter.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputUGUIHandleBase.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInputUGUIHandle.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputUGUIHandleBase.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/AxiInputUGUIHandle.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputAxisCenter.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/Axis/AxiInputAxisCenter.cs similarity index 97% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputAxisCenter.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/Axis/AxiInputAxisCenter.cs index 68baed5b..46366858 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputAxisCenter.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/Axis/AxiInputAxisCenter.cs @@ -1,13 +1,13 @@ using System.Collections.Generic; using UnityEngine; -namespace Assets.Script.AppMain.AxiInput +namespace AxiInputSP.Axis { public static class AxiInputAxisCenter { static long LastCheckFrame = -1; - public enum AxisState + enum AxisState { None, KeyUp, diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputAxisCenter.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/Axis/AxiInputAxisCenter.cs.meta similarity index 100% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputAxisCenter.cs.meta rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/Axis/AxiInputAxisCenter.cs.meta diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Common/PC_XBOXKEY.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/PC_XBOXKEY.cs similarity index 95% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/Common/PC_XBOXKEY.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/PC_XBOXKEY.cs index 873ae60f..173f3cb1 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/Common/PC_XBOXKEY.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/PC_XBOXKEY.cs @@ -1,6 +1,6 @@ using UnityEngine; -namespace AxibugEmuOnline.Client.Common +namespace AxiInputSP { public static class PC_XBOXKEY { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Common/PSVitaKey.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/PSVitaKey.cs similarity index 96% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/Common/PSVitaKey.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/PSVitaKey.cs index fd86bb22..9b006f86 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/Common/PSVitaKey.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/PSVitaKey.cs @@ -1,6 +1,6 @@ using UnityEngine; -namespace AxibugEmuOnline.Client.Common +namespace AxiInputSP { public static class PSVitaKey { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputUGUICenter.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/UGUI/AxiInputUGUICenter.cs similarity index 74% rename from AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputUGUICenter.cs rename to AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/UGUI/AxiInputUGUICenter.cs index d87ba1c7..50d8aa75 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInput/AxiInputUGUICenter.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/UGUI/AxiInputUGUICenter.cs @@ -1,34 +1,34 @@ using System.Collections.Generic; -namespace Assets.Script.AppMain.AxiInput +namespace AxiInputSP.UGUI { public static class AxiInputUGUICenter { static int handleSeed = 0; - static Dictionary<int, AxiInputUGUIHandleBase> dictHandle2AxiUgui = new Dictionary<int, AxiInputUGUIHandleBase>(); - static Dictionary<AxiInputUGuiBtnType, List<AxiInputUGUIHandleBase>> dictBtnType2BtnList = new Dictionary<AxiInputUGuiBtnType, List<AxiInputUGUIHandleBase>>(); + static Dictionary<int, AxiInputUGUIHandle> dictHandle2AxiUgui = new Dictionary<int, AxiInputUGUIHandle>(); + static Dictionary<AxiInputUGuiBtnType, List<AxiInputUGUIHandle>> dictBtnType2BtnList = new Dictionary<AxiInputUGuiBtnType, List<AxiInputUGUIHandle>>(); public static int GetNextSeed() { return ++handleSeed; } - public static void RegHandle(AxiInputUGUIHandleBase uiHandle) + public static void RegHandle(AxiInputUGUIHandle uiHandle) { dictHandle2AxiUgui[uiHandle.Handle] = uiHandle; - List<AxiInputUGUIHandleBase> list; + List<AxiInputUGUIHandle> list; if (dictBtnType2BtnList.TryGetValue(uiHandle.UguiBtnType, out list)) - list = dictBtnType2BtnList[uiHandle.UguiBtnType] = new List<AxiInputUGUIHandleBase>(); + list = dictBtnType2BtnList[uiHandle.UguiBtnType] = new List<AxiInputUGUIHandle>(); if (!list.Contains(uiHandle)) list.Add(uiHandle); } - public static void UnregHandle(AxiInputUGUIHandleBase uiHandle) + public static void UnregHandle(AxiInputUGUIHandle uiHandle) { if (!dictHandle2AxiUgui.ContainsKey(uiHandle.Handle)) return; dictHandle2AxiUgui.Remove(uiHandle.Handle); - List<AxiInputUGUIHandleBase> list; + List<AxiInputUGUIHandle> list; if (dictBtnType2BtnList.TryGetValue(uiHandle.UguiBtnType, out list)) { if (list.Contains(uiHandle)) @@ -38,7 +38,7 @@ namespace Assets.Script.AppMain.AxiInput public static bool GetKeyUp(AxiInputUGuiBtnType btntype) { - List<AxiInputUGUIHandleBase> list; + List<AxiInputUGUIHandle> list; if (!dictBtnType2BtnList.TryGetValue(btntype, out list)) return false; for (int i = 0; i < list.Count; i++) @@ -51,7 +51,7 @@ namespace Assets.Script.AppMain.AxiInput public static bool GetKeyDown(AxiInputUGuiBtnType btntype) { - List<AxiInputUGUIHandleBase> list; + List<AxiInputUGUIHandle> list; if (!dictBtnType2BtnList.TryGetValue(btntype, out list)) return false; for (int i = 0; i < list.Count; i++) @@ -64,7 +64,7 @@ namespace Assets.Script.AppMain.AxiInput public static bool GetKey(AxiInputUGuiBtnType btntype) { - List<AxiInputUGUIHandleBase> list; + List<AxiInputUGUIHandle> list; if (!dictBtnType2BtnList.TryGetValue(btntype, out list)) return false; for (int i = 0; i < list.Count; i++) diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/UGUI/AxiInputUGUIHandle.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/UGUI/AxiInputUGUIHandle.cs new file mode 100644 index 00000000..d19baceb --- /dev/null +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/UGUI/AxiInputUGUIHandle.cs @@ -0,0 +1,40 @@ +using System; + +namespace AxiInputSP.UGUI +{ + public class AxiInputUGUIHandle + { + public int Handle { get; private set; } + public AxiInputUGuiBtnType UguiBtnType { get; private set; } + + public AxiInputUGUIHandle(AxiInputUGuiBtnType uguiBtnType) + { + Handle = AxiInputUGUICenter.GetNextSeed(); + this.UguiBtnType = uguiBtnType; + AxiInputUGUICenter.RegHandle(this); + } + public bool GetKey() + { + return GetKeyHandle != null ? GetKeyHandle.Invoke() : false; + } + public bool GetKeyUp() + { + return GetKeyUpHandle != null ? GetKeyUpHandle.Invoke() : false; + } + public bool GetKeyDown() + { + return GetKeyDownHandle != null ? GetKeyDownHandle.Invoke() : false; + } + public Func<bool> GetKeyHandle; + public Func<bool> GetKeyUpHandle; + public Func<bool> GetKeyDownHandle; + + public void Dispose() + { + GetKeyHandle = null; + GetKeyUpHandle = null; + GetKeyDownHandle = null; + AxiInputUGUICenter.UnregHandle(this); + } + } +} diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/UGUI/AxiIptButton.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/UGUI/AxiIptButton.cs new file mode 100644 index 00000000..2560707d --- /dev/null +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/AxiInputSP/UGUI/AxiIptButton.cs @@ -0,0 +1,92 @@ +using UnityEngine.EventSystems; + +namespace AxiInputSP.UGUI +{ + public class AxiIptButton : UnityEngine.UI.Button + { + enum AxiButtonState + { + None, + KeyUp, + KeyDown, + KeyHold + } + + AxiInputUGUIHandle[] handles; + AxiButtonState m_state = AxiButtonState.None; + /// <summary> + /// 键值(支持组合键) + /// </summary> + public AxiInputUGuiBtnType[] axiBtnTypeList; + protected override void Awake() + { + base.Awake(); + if (axiBtnTypeList != null) + { + handles = new AxiInputUGUIHandle[axiBtnTypeList.Length]; + for (int i = 0; i < axiBtnTypeList.Length; i++) + { + handles[i] = new AxiInputUGUIHandle(axiBtnTypeList[i]); + handles[i].GetKeyHandle = GetKey; + handles[i].GetKeyUpHandle = GetKeyUp; + handles[i].GetKeyDownHandle = GetKeyDown; + } + } + } + + protected override void OnDestroy() + { + base.OnDestroy(); + if (axiBtnTypeList != null) + { + handles = new AxiInputUGUIHandle[axiBtnTypeList.Length]; + for (int i = 0; i < axiBtnTypeList.Length; i++) + { + handles[i].Dispose(); + handles[i] = null; + } + axiBtnTypeList = null; + handles = null; + } + + } + protected override void OnEnable() + { + base.OnEnable(); + } + + bool GetKey() + { + return m_state >= AxiButtonState.KeyDown; + } + bool GetKeyUp() + { + return m_state == AxiButtonState.KeyUp; + } + bool GetKeyDown() + { + return m_state == AxiButtonState.KeyDown; + } + + public override void OnPointerDown(PointerEventData eventData) + { + base.OnPointerDown(eventData); + //如果之前帧是KeyUp或None,则为KeyDown|KeyHold + if (m_state <= AxiButtonState.KeyUp) + m_state = AxiButtonState.KeyDown; + //如果之前帧是KeyDown,则为KeyHold + else if (m_state == AxiButtonState.KeyDown) + m_state = AxiButtonState.KeyHold; + } + public override void OnPointerUp(PointerEventData eventData) + { + base.OnPointerUp(eventData); + //如果之前帧是KeyDown|KeyHold,则为KeyUp|None + if (m_state >= AxiButtonState.KeyDown) + m_state = AxiButtonState.KeyUp; + //如果之前帧是KeyUp,则为None + else if (m_state == AxiButtonState.KeyUp) + m_state = AxiButtonState.None; + } + } +} diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Emulator/NesEmulator/NesControllerMapper.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/Emulator/NesEmulator/NesControllerMapper.cs index 71bea9b2..c50b8f8b 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/Emulator/NesEmulator/NesControllerMapper.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Emulator/NesEmulator/NesControllerMapper.cs @@ -201,27 +201,27 @@ namespace AxibugEmuOnline.Client // MIC.IsDown; } - public static KeyListener GetKey(int controllerInput, EnumButtonType nesConBtnType) - { - string configKey = $"NES_{controllerInput}_{nesConBtnType}"; + //public static KeyListener GetKey(int controllerInput, EnumButtonType nesConBtnType) + //{ + // string configKey = $"NES_{controllerInput}_{nesConBtnType}"; - //PSV平台固定键值 - if (UnityEngine.Application.platform == RuntimePlatform.PSP2) - { - return KeyListener.GetPSVitaKey(controllerInput, nesConBtnType); - } + // //PSV平台固定键值 + // if (UnityEngine.Application.platform == RuntimePlatform.PSP2) + // { + // return KeyListener.GetPSVitaKey(controllerInput, nesConBtnType); + // } - if (PlayerPrefs.HasKey(configKey)) - { - return new KeyListener(PlayerPrefs.GetString(configKey)); - } - else - { - var defaultKeyCode = KeyListener.GetDefaultKey(controllerInput, nesConBtnType); - PlayerPrefs.SetString(configKey, defaultKeyCode.ToString()); - return defaultKeyCode; - } - } + // if (PlayerPrefs.HasKey(configKey)) + // { + // return new KeyListener(PlayerPrefs.GetString(configKey)); + // } + // else + // { + // var defaultKeyCode = KeyListener.GetDefaultKey(controllerInput, nesConBtnType); + // PlayerPrefs.SetString(configKey, defaultKeyCode.ToString()); + // return defaultKeyCode; + // } + //} } ///// <summary> @@ -268,127 +268,127 @@ namespace AxibugEmuOnline.Client //low C# readonly //public readonly struct KeyListener - public struct KeyListener - { - private readonly KeyCode m_key; + //public struct KeyListener + //{ + // private readonly KeyCode m_key; - public KeyListener(KeyCode key) - { - m_key = key; - } + // public KeyListener(KeyCode key) + // { + // m_key = key; + // } - /// <summary> 从配置字符串构建 </summary> - public KeyListener(string confStr) - { - m_key = KeyCode.None; + // /// <summary> 从配置字符串构建 </summary> + // public KeyListener(string confStr) + // { + // m_key = KeyCode.None; - int result; - if (int.TryParse(confStr, out result)) - m_key = (KeyCode)result; - } + // int result; + // if (int.TryParse(confStr, out result)) + // m_key = (KeyCode)result; + // } - public bool IsPressing() - { - return Input.GetKey(m_key); - } - public bool IsDown() - { - return Input.GetKeyDown(m_key); - } + // public bool IsPressing() + // { + // return Input.GetKey(m_key); + // } + // public bool IsDown() + // { + // return Input.GetKeyDown(m_key); + // } - public override string ToString() - { - return ((int)(m_key)).ToString(); - } + // public override string ToString() + // { + // return ((int)(m_key)).ToString(); + // } - public static KeyListener GetDefaultKey(int controllerIndex, EnumButtonType nesConBtnType) - { - switch (controllerIndex) - { - case 0: - switch (nesConBtnType) - { - case EnumButtonType.LEFT: - return new KeyListener(KeyCode.A); - case EnumButtonType.RIGHT: - return new KeyListener(KeyCode.D); - case EnumButtonType.UP: - return new KeyListener(KeyCode.W); - case EnumButtonType.DOWN: - return new KeyListener(KeyCode.S); - case EnumButtonType.START: - return new KeyListener(KeyCode.B); - case EnumButtonType.SELECT: - return new KeyListener(KeyCode.V); - case EnumButtonType.A: - return new KeyListener(KeyCode.K); - case EnumButtonType.B: - return new KeyListener(KeyCode.J); - case EnumButtonType.MIC: - return new KeyListener(KeyCode.M); - } + // public static KeyListener GetDefaultKey(int controllerIndex, EnumButtonType nesConBtnType) + // { + // switch (controllerIndex) + // { + // case 0: + // switch (nesConBtnType) + // { + // case EnumButtonType.LEFT: + // return new KeyListener(KeyCode.A); + // case EnumButtonType.RIGHT: + // return new KeyListener(KeyCode.D); + // case EnumButtonType.UP: + // return new KeyListener(KeyCode.W); + // case EnumButtonType.DOWN: + // return new KeyListener(KeyCode.S); + // case EnumButtonType.START: + // return new KeyListener(KeyCode.B); + // case EnumButtonType.SELECT: + // return new KeyListener(KeyCode.V); + // case EnumButtonType.A: + // return new KeyListener(KeyCode.K); + // case EnumButtonType.B: + // return new KeyListener(KeyCode.J); + // case EnumButtonType.MIC: + // return new KeyListener(KeyCode.M); + // } - break; - case 1: - switch (nesConBtnType) - { - case EnumButtonType.LEFT: - return new KeyListener(KeyCode.Delete); - case EnumButtonType.RIGHT: - return new KeyListener(KeyCode.PageDown); - case EnumButtonType.UP: - return new KeyListener(KeyCode.Home); - case EnumButtonType.DOWN: - return new KeyListener(KeyCode.End); - case EnumButtonType.START: - return new KeyListener(KeyCode.PageUp); - case EnumButtonType.SELECT: - return new KeyListener(KeyCode.Insert); - case EnumButtonType.A: - return new KeyListener(KeyCode.Keypad5); - case EnumButtonType.B: - return new KeyListener(KeyCode.Keypad4); - case EnumButtonType.MIC: - return new KeyListener(KeyCode.KeypadPeriod); - } + // break; + // case 1: + // switch (nesConBtnType) + // { + // case EnumButtonType.LEFT: + // return new KeyListener(KeyCode.Delete); + // case EnumButtonType.RIGHT: + // return new KeyListener(KeyCode.PageDown); + // case EnumButtonType.UP: + // return new KeyListener(KeyCode.Home); + // case EnumButtonType.DOWN: + // return new KeyListener(KeyCode.End); + // case EnumButtonType.START: + // return new KeyListener(KeyCode.PageUp); + // case EnumButtonType.SELECT: + // return new KeyListener(KeyCode.Insert); + // case EnumButtonType.A: + // return new KeyListener(KeyCode.Keypad5); + // case EnumButtonType.B: + // return new KeyListener(KeyCode.Keypad4); + // case EnumButtonType.MIC: + // return new KeyListener(KeyCode.KeypadPeriod); + // } - break; - } + // break; + // } - return default(KeyListener); - } + // return default(KeyListener); + // } - public static KeyListener GetPSVitaKey(int controllerIndex, EnumButtonType nesConBtnType) - { - switch (controllerIndex) - { - case 0: - switch (nesConBtnType) - { - case EnumButtonType.LEFT: - return new KeyListener(PSVitaKey.Left); - case EnumButtonType.RIGHT: - return new KeyListener(PSVitaKey.Right); - case EnumButtonType.UP: - return new KeyListener(PSVitaKey.Up); - case EnumButtonType.DOWN: - return new KeyListener(PSVitaKey.Down); - case EnumButtonType.START: - return new KeyListener(PSVitaKey.Start); - case EnumButtonType.SELECT: - return new KeyListener(PSVitaKey.Select); - case EnumButtonType.A: - return new KeyListener(PSVitaKey.Circle); - case EnumButtonType.B: - return new KeyListener(PSVitaKey.Cross); - case EnumButtonType.MIC: - return new KeyListener(PSVitaKey.Block); - } - break; - } - return default(KeyListener); - } - } + // //public static KeyListener GetPSVitaKey(int controllerIndex, EnumButtonType nesConBtnType) + // //{ + // // switch (controllerIndex) + // // { + // // case 0: + // // switch (nesConBtnType) + // // { + // // case EnumButtonType.LEFT: + // // return new KeyListener(PSVitaKey.Left); + // // case EnumButtonType.RIGHT: + // // return new KeyListener(PSVitaKey.Right); + // // case EnumButtonType.UP: + // // return new KeyListener(PSVitaKey.Up); + // // case EnumButtonType.DOWN: + // // return new KeyListener(PSVitaKey.Down); + // // case EnumButtonType.START: + // // return new KeyListener(PSVitaKey.Start); + // // case EnumButtonType.SELECT: + // // return new KeyListener(PSVitaKey.Select); + // // case EnumButtonType.A: + // // return new KeyListener(PSVitaKey.Circle); + // // case EnumButtonType.B: + // // return new KeyListener(PSVitaKey.Cross); + // // case EnumButtonType.MIC: + // // return new KeyListener(PSVitaKey.Block); + // // } + // // break; + // // } + // // return default(KeyListener); + // //} + //} } } \ No newline at end of file diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/IkeyMapperChanger/GamingChanger.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/IkeyMapperChanger/GamingChanger.cs index 4a632405..0029e267 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/IkeyMapperChanger/GamingChanger.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/IkeyMapperChanger/GamingChanger.cs @@ -1,7 +1,5 @@ -using Assets.Script.AppMain.AxiInput.Settings; -using AxibugEmuOnline.Client.ClientCore; +using AxibugEmuOnline.Client.ClientCore; using AxibugEmuOnline.Client.Manager; -using System; namespace AxibugEmuOnline.Client { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/IkeyMapperChanger/NormalChanger.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/IkeyMapperChanger/NormalChanger.cs index bdf6c2b1..bba6c35f 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/IkeyMapperChanger/NormalChanger.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/IkeyMapperChanger/NormalChanger.cs @@ -1,7 +1,5 @@ -using Assets.Script.AppMain.AxiInput.Settings; -using AxibugEmuOnline.Client.ClientCore; +using AxibugEmuOnline.Client.ClientCore; using AxibugEmuOnline.Client.Manager; -using System; namespace AxibugEmuOnline.Client { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppInput.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppInput.cs index aa204a7a..1bde885a 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppInput.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppInput.cs @@ -1,11 +1,9 @@ -using Assets.Script.AppMain.AxiInput; -using Assets.Script.AppMain.AxiInput.Settings; -using AxibugEmuOnline.Client.Common; +using AxibugEmuOnline.Client.Common; +using AxiInputSP; +using AxiInputSP.Setting; using System; using System.Collections.Generic; using System.Linq; -using UnityEngine; -using UnityEngine.UIElements.Experimental; namespace AxibugEmuOnline.Client.Manager { diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/CommandDispatcher/CommandListener.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/CommandDispatcher/CommandListener.cs index 2be86f8a..54bb040c 100644 --- a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/CommandDispatcher/CommandListener.cs +++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/CommandDispatcher/CommandListener.cs @@ -1,11 +1,8 @@ -using Assets.Script.AppMain.AxiInput; -using AxibugEmuOnline.Client.ClientCore; +using AxibugEmuOnline.Client.ClientCore; using AxibugEmuOnline.Client.Manager; -using System.CodeDom.Compiler; using System.Collections.Generic; using System.Linq; using UnityEngine; -using static UnityEditor.Progress; namespace AxibugEmuOnline.Client {