ServerEntityEventManager doesn't process received events until the character inputs of the client for the corresponding frame have been processed (fixes character movement lagging behind EntityEvents at the servers side)

+ split character networking logic into a separate file, characters drop items at the position of their collider instead of hands
This commit is contained in:
Regalis
2017-02-09 18:56:28 +02:00
parent 1f16bef01c
commit 52bf73722f
29 changed files with 959 additions and 827 deletions
@@ -11,7 +11,7 @@ namespace Barotrauma.Networking
interface IClientSerializable : INetSerializable
{
void ClientWrite(NetBuffer msg, object[] extraData = null);
void ServerRead(ClientNetObject type, NetIncomingMessage msg, Client c);
void ServerRead(ClientNetObject type, NetBuffer msg, Client c);
}
/// <summary>
@@ -20,6 +20,6 @@ namespace Barotrauma.Networking
interface IServerSerializable : INetSerializable
{
void ServerWrite(NetBuffer msg, Client c, object[] extraData = null);
void ClientRead(ServerNetObject type, NetIncomingMessage msg, float sendingTime);
void ClientRead(ServerNetObject type, NetBuffer msg, float sendingTime);
}
}