|
|
@@ -46,9 +46,9 @@ namespace MineCase.Server.Network
|
|
|
innerPacket = ServerboundKeepAlive.Deserialize(ref br);
|
|
|
break;
|
|
|
|
|
|
- // Position And Look
|
|
|
- case 0x0F:
|
|
|
- innerPacket = DeferPacket(ServerboundPositionAndLook.Deserialize(ref br));
|
|
|
+ // Player On Ground
|
|
|
+ case 0x0D:
|
|
|
+ innerPacket = DeferPacket(PlayerOnGround.Deserialize(ref br));
|
|
|
break;
|
|
|
|
|
|
// Player Position
|
|
|
@@ -56,21 +56,31 @@ namespace MineCase.Server.Network
|
|
|
innerPacket = DeferPacket(PlayerPosition.Deserialize(ref br));
|
|
|
break;
|
|
|
|
|
|
+ // Position And Look
|
|
|
+ case 0x0F:
|
|
|
+ innerPacket = DeferPacket(ServerboundPositionAndLook.Deserialize(ref br));
|
|
|
+ break;
|
|
|
+
|
|
|
// Player Look
|
|
|
case 0x10:
|
|
|
innerPacket = DeferPacket(PlayerLook.Deserialize(ref br));
|
|
|
break;
|
|
|
|
|
|
- // Held Item Change
|
|
|
- case 0x1A:
|
|
|
- innerPacket = DeferPacket(ServerboundHeldItemChange.Deserialize(ref br));
|
|
|
- break;
|
|
|
-
|
|
|
// Player Digging
|
|
|
case 0x14:
|
|
|
innerPacket = DeferPacket(PlayerDigging.Deserialize(ref br));
|
|
|
break;
|
|
|
|
|
|
+ // Entity Action
|
|
|
+ case 0x15:
|
|
|
+ innerPacket = DeferPacket(EntityAction.Deserialize(ref br));
|
|
|
+ break;
|
|
|
+
|
|
|
+ // Held Item Change
|
|
|
+ case 0x1A:
|
|
|
+ innerPacket = DeferPacket(ServerboundHeldItemChange.Deserialize(ref br));
|
|
|
+ break;
|
|
|
+
|
|
|
// Animation
|
|
|
case 0x1D:
|
|
|
innerPacket = DeferPacket(ServerboundAnimation.Deserialize(ref br));
|
|
|
@@ -130,6 +140,12 @@ namespace MineCase.Server.Network
|
|
|
player.SetLook(packet.Yaw, packet.Pitch, packet.OnGround).Ignore();
|
|
|
}
|
|
|
|
|
|
+ private async Task DispatchPacket(PlayerOnGround packet)
|
|
|
+ {
|
|
|
+ var player = await _user.GetPlayer();
|
|
|
+ await player.SetOnGround(packet.OnGround);
|
|
|
+ }
|
|
|
+
|
|
|
private async Task DispatchPacket(PlayerPosition packet)
|
|
|
{
|
|
|
var player = await _user.GetPlayer();
|
|
|
@@ -185,6 +201,12 @@ namespace MineCase.Server.Network
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private Task DispatchPacket(EntityAction packet)
|
|
|
+ {
|
|
|
+ // TODO Set Entity Action
|
|
|
+ return Task.CompletedTask;
|
|
|
+ }
|
|
|
+
|
|
|
private Task DispatchPacket(ServerboundAnimation packet)
|
|
|
{
|
|
|
return Task.CompletedTask;
|