server 提交按键

This commit is contained in:
sin365 2025-01-26 15:04:34 +08:00
parent fb05c22235
commit 0813e4af5d

View File

@ -735,8 +735,9 @@ namespace AxibugEmuOnline.Server
/// 按照SlotIdx设置Input /// 按照SlotIdx设置Input
/// </summary> /// </summary>
/// <param name="slotIdx"></param> /// <param name="slotIdx"></param>
void SetInputDataBySlotIdx(uint slotIdx, ushort val) void SetInputDataBySlotIdx(uint slotIdx, ServerInputSnapShot data)
{ {
ushort val = 0;
switch (GameRomPlatformType) switch (GameRomPlatformType)
{ {
case RomPlatformType.Cps1: case RomPlatformType.Cps1:
@ -745,6 +746,14 @@ namespace AxibugEmuOnline.Server
case RomPlatformType.Igs: case RomPlatformType.Igs:
case RomPlatformType.ArcadeOld: case RomPlatformType.ArcadeOld:
{ {
switch (slotIdx)
{
case 0: val = data.p1_ushort; break;
case 1: val = data.p2_ushort; break;
case 2: val = data.p3_ushort; break;
case 4: val = data.p4_ushort; break;
}
//ushort 类型作为单个玩家操作 //ushort 类型作为单个玩家操作
switch (slotIdx) switch (slotIdx)
{ {
@ -757,6 +766,13 @@ namespace AxibugEmuOnline.Server
break; break;
default: default:
{ {
switch (slotIdx)
{
case 0: val = data.p1_byte; break;
case 1: val = data.p2_byte; break;
case 2: val = data.p3_byte; break;
case 4: val = data.p4_byte; break;
}
//byte 类型作为单个玩家操作 //byte 类型作为单个玩家操作
switch (slotIdx) switch (slotIdx)
{ {
@ -999,10 +1015,10 @@ namespace AxibugEmuOnline.Server
{ {
switch (LocalJoyIdx) switch (LocalJoyIdx)
{ {
case 0: SetInputDataBySlotIdx(SlotIdx, clieninput.p1_byte); break; case 0: SetInputDataBySlotIdx(SlotIdx, clieninput); break;
case 1: SetInputDataBySlotIdx(SlotIdx, clieninput.p2_byte); break; case 1: SetInputDataBySlotIdx(SlotIdx, clieninput); break;
case 2: SetInputDataBySlotIdx(SlotIdx, clieninput.p3_byte); break; case 2: SetInputDataBySlotIdx(SlotIdx, clieninput); break;
case 3: SetInputDataBySlotIdx(SlotIdx, clieninput.p4_byte); break; case 3: SetInputDataBySlotIdx(SlotIdx, clieninput); break;
} }
} }
public int GetPlayerCount() public int GetPlayerCount()