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
@@ -348,7 +348,7 @@ namespace Barotrauma.Items.Components
draggingConnected.RemoveConnection(item);
if (draggingConnected.Connect(this, !alreadyConnected)) Wires[index] = draggingConnected;
if (draggingConnected.Connect(this, !alreadyConnected, true)) Wires[index] = draggingConnected;
}
}
}
@@ -477,7 +477,7 @@ namespace Barotrauma.Items.Components
if (Wires[i] != null)
{
if (Wires[i].Item.body != null) Wires[i].Item.body.Enabled = false;
Wires[i].Connect(this, false, true);
Wires[i].Connect(this, false, false);
}
}
}