- Edited item densities to make more sense
- Characters spawned through the console are synced with clients
This commit is contained in:
@@ -588,6 +588,9 @@ namespace Barotrauma.Networking
|
||||
case (byte)PacketTypes.NewItem:
|
||||
Item.Spawner.ReadNetworkData(inc);
|
||||
break;
|
||||
case (byte)PacketTypes.NewCharacter:
|
||||
ReadCharacterSpawnMessage(inc);
|
||||
break;
|
||||
case (byte)PacketTypes.RemoveItem:
|
||||
Item.Remover.ReadNetworkData(inc);
|
||||
break;
|
||||
@@ -767,6 +770,18 @@ namespace Barotrauma.Networking
|
||||
GameMain.NetworkMember = null;
|
||||
}
|
||||
|
||||
public void ReadCharacterSpawnMessage(NetIncomingMessage message)
|
||||
{
|
||||
string configPath = message.ReadString();
|
||||
|
||||
ushort id = message.ReadUInt16();
|
||||
|
||||
Vector2 position = new Vector2(message.ReadFloat(), message.ReadFloat());
|
||||
|
||||
var character = Character.Create(configPath, position);
|
||||
if (character != null) character.ID = id;
|
||||
}
|
||||
|
||||
public void RequestFile(string file, FileTransferMessageType fileType)
|
||||
{
|
||||
if (fileStreamReceiver!=null)
|
||||
|
||||
@@ -1476,6 +1476,21 @@ namespace Barotrauma.Networking
|
||||
message.Write(character.Info.Job.Name);
|
||||
}
|
||||
|
||||
public void SendCharacterSpawnMessage(Character character)
|
||||
{
|
||||
NetOutgoingMessage message = server.CreateMessage();
|
||||
message.Write((byte)PacketTypes.NewCharacter);
|
||||
|
||||
message.Write(character.ConfigPath);
|
||||
|
||||
message.Write(character.ID);
|
||||
|
||||
message.Write(character.Position.X);
|
||||
message.Write(character.Position.Y);
|
||||
|
||||
SendMessage(message, NetDeliveryMethod.ReliableUnordered);
|
||||
}
|
||||
|
||||
public void SendItemSpawnMessage(List<Item> items, List<Inventory> inventories = null)
|
||||
{
|
||||
if (items == null || !items.Any()) return;
|
||||
|
||||
@@ -21,6 +21,8 @@ namespace Barotrauma.Networking
|
||||
|
||||
NewItem, RemoveItem,
|
||||
|
||||
NewCharacter,
|
||||
|
||||
CharacterInfo,
|
||||
|
||||
Chatmessage, UpdateNetLobby,
|
||||
|
||||
Reference in New Issue
Block a user