ItemRemover -> EntityRemover, clients reset spawner & remover when starting a new round

This commit is contained in:
Regalis
2016-10-12 20:46:47 +03:00
parent 60b36e020c
commit 170e1a0da8
12 changed files with 144 additions and 115 deletions

View File

@@ -559,6 +559,9 @@ namespace Barotrauma.Networking
{
if (Character != null) Character.Remove();
Entity.Spawner.Clear();
Entity.Remover.Clear();
endVoteTickBox.Selected = false;
int seed = inc.ReadInt32();
@@ -715,6 +718,14 @@ namespace Barotrauma.Networking
break;
case ServerNetObject.ENTITY_SPAWN:
Item.Spawner.ClientRead(inc);
inc.ReadPadBits();
break;
case ServerNetObject.ENTITY_REMOVE:
Item.Remover.ClientRead(inc);
inc.ReadPadBits();
break;
default:
DebugConsole.ThrowError("Error while reading update from server (unknown object header \""+objHeader+"\"!)");
break;
}
}
@@ -750,7 +761,9 @@ namespace Barotrauma.Networking
outmsg.Write((byte)ClientNetObject.SYNC_IDS);
outmsg.Write(GameMain.NetLobbyScreen.LastUpdateID);
outmsg.Write(ChatMessage.LastID);
outmsg.Write(Item.Spawner.NetStateID);
outmsg.Write(Entity.Spawner.NetStateID);
outmsg.Write(Entity.Remover.NetStateID);
ChatMessage removeMsg;
while ((removeMsg = chatMsgQueue.Find(cMsg => cMsg.NetStateID <= lastSentChatMsgID)) != null)
{