Unstable v0.19.3.0

This commit is contained in:
Juan Pablo Arce
2022-09-02 15:10:56 -03:00
parent 28789616bd
commit 3f2c843247
336 changed files with 7152 additions and 7739 deletions
@@ -6,11 +6,11 @@ namespace Barotrauma.Items.Components
{
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(docked);
msg.WriteBoolean(docked);
if (docked)
{
msg.Write(DockingTarget.item.ID);
msg.Write(IsLocked);
msg.WriteUInt16(DockingTarget.item.ID);
msg.WriteBoolean(IsLocked);
}
}
public void ServerEventRead(IReadMessage msg, Client c)
@@ -38,13 +38,13 @@ namespace Barotrauma.Items.Components
bool forcedOpen = TryExtractEventData<EventData>(extraData, out var eventData) && eventData.ForcedOpen;
base.ServerEventWrite(msg, c, extraData);
msg.Write(isOpen);
msg.Write(isBroken);
msg.Write(forcedOpen); //forced open
msg.Write(isStuck);
msg.Write(isJammed);
msg.WriteBoolean(isOpen);
msg.WriteBoolean(isBroken);
msg.WriteBoolean(forcedOpen); //forced open
msg.WriteBoolean(isStuck);
msg.WriteBoolean(isJammed);
msg.WriteRangedSingle(stuck, 0.0f, 100.0f, 8);
msg.Write(lastUser == null ? (UInt16)0 : lastUser.ID);
msg.WriteUInt16(lastUser == null ? (UInt16)0 : lastUser.ID);
}
}
}
@@ -6,14 +6,14 @@ namespace Barotrauma.Items.Components
{
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(tainted);
msg.WriteBoolean(tainted);
if (tainted)
{
msg.Write(selectedTaintedEffect?.UintIdentifier ?? 0);
msg.WriteUInt32(selectedTaintedEffect?.UintIdentifier ?? 0);
}
else
{
msg.Write(selectedEffect?.UintIdentifier ?? 0);
msg.WriteUInt32(selectedEffect?.UintIdentifier ?? 0);
}
}
}
@@ -37,7 +37,7 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.WriteRangedSingle(Health, 0f, (float) MaxHealth, 8);
msg.WriteRangedSingle(Health, 0f, (float)MaxHealth, 8);
if (TryExtractEventData(extraData, out EventData eventData))
{
int offset = eventData.Offset;
@@ -48,11 +48,11 @@ namespace Barotrauma.Items.Components
{
VineTile vine = Vines[i];
var (x, y) = vine.Position;
msg.WriteRangedInteger((byte) vine.Type, 0b0000, 0b1111);
msg.WriteRangedInteger((byte)vine.Type, 0b0000, 0b1111);
msg.WriteRangedInteger(vine.FlowerConfig.Serialize(), 0, 0xFFF);
msg.WriteRangedInteger(vine.LeafConfig.Serialize(), 0, 0xFFF);
msg.Write((byte) (x / VineTile.Size));
msg.Write((byte) (y / VineTile.Size));
msg.WriteByte((byte)(x / VineTile.Size));
msg.WriteByte((byte)(y / VineTile.Size));
}
}
else
@@ -10,13 +10,13 @@ namespace Barotrauma.Items.Components
base.ServerEventWrite(msg, c, extraData);
bool writeAttachData = attachable && body != null;
msg.Write(writeAttachData);
msg.WriteBoolean(writeAttachData);
if (!writeAttachData) { return; }
msg.Write(Attached);
msg.Write(body.SimPosition.X);
msg.Write(body.SimPosition.Y);
msg.Write(item.Submarine?.ID ?? Entity.NullEntityID);
msg.WriteBoolean(Attached);
msg.WriteSingle(body.SimPosition.X);
msg.WriteSingle(body.SimPosition.Y);
msg.WriteUInt16(item.Submarine?.ID ?? Entity.NullEntityID);
}
public void ServerEventRead(IReadMessage msg, Client c)
@@ -8,7 +8,7 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(deattachTimer);
msg.WriteSingle(deattachTimer);
}
}
}
@@ -78,7 +78,7 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(Text);
msg.WriteString(Text);
lastSentText = Text;
}
}
@@ -38,7 +38,7 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(IsActive);
msg.WriteBoolean(IsActive);
lastSentState = IsActive;
}
}
@@ -6,8 +6,8 @@ namespace Barotrauma.Items.Components
{
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(State);
msg.Write(user == null ? (ushort)0 : user.ID);
msg.WriteBoolean(State);
msg.WriteUInt16(user == null ? (ushort)0 : user.ID);
}
}
}
@@ -18,9 +18,9 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(user?.ID ?? 0);
msg.Write(IsActive);
msg.Write(progressTimer);
msg.WriteUInt16(user?.ID ?? 0);
msg.WriteBoolean(IsActive);
msg.WriteSingle(progressTimer);
}
}
}
@@ -9,7 +9,7 @@ namespace Barotrauma.Items.Components
{
//force can only be adjusted at 10% intervals -> no need for more accuracy than this
msg.WriteRangedInteger((int)(targetForce / 10.0f), -10, 10);
msg.Write(User == null ? Entity.NullEntityID : User.ID);
msg.WriteUInt16(User == null ? Entity.NullEntityID : User.ID);
}
public void ServerEventRead(IReadMessage msg, Client c)
@@ -55,18 +55,18 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
var componentData = ExtractEventData<EventData>(extraData);
msg.Write((byte)componentData.State);
msg.Write(timeUntilReady);
msg.WriteByte((byte)componentData.State);
msg.WriteSingle(timeUntilReady);
uint recipeHash = fabricatedItem?.RecipeHash ?? 0;
msg.Write(recipeHash);
msg.WriteUInt32(recipeHash);
UInt16 userId = fabricatedItem is null || user is null ? (UInt16)0 : user.ID;
msg.Write(userId);
msg.WriteUInt16(userId);
var reachedLimits = fabricationLimits.Where(kvp => kvp.Value <= 0);
msg.Write((ushort)reachedLimits.Count());
msg.WriteUInt16((ushort)reachedLimits.Count());
foreach (var kvp in reachedLimits)
{
msg.Write(kvp.Key);
msg.WriteUInt32(kvp.Key);
}
}
}
@@ -49,16 +49,16 @@ namespace Barotrauma.Items.Components
{
//flowpercentage can only be adjusted at 10% intervals -> no need for more accuracy than this
msg.WriteRangedInteger((int)(flowPercentage / 10.0f), -10, 10);
msg.Write(IsActive);
msg.Write(Hijacked);
msg.WriteBoolean(IsActive);
msg.WriteBoolean(Hijacked);
if (TargetLevel != null)
{
msg.Write(true);
msg.Write(TargetLevel.Value);
msg.WriteBoolean(true);
msg.WriteSingle(TargetLevel.Value);
}
else
{
msg.Write(false);
msg.WriteBoolean(false);
}
}
}
@@ -45,8 +45,8 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(autoTemp);
msg.Write(_powerOn);
msg.WriteBoolean(autoTemp);
msg.WriteBoolean(_powerOn);
msg.WriteRangedSingle(temperature, 0.0f, 100.0f, 8);
msg.WriteRangedSingle(TargetFissionRate, 0.0f, 100.0f, 8);
msg.WriteRangedSingle(TargetTurbineOutput, 0.0f, 100.0f, 8);
@@ -100,30 +100,30 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Barotrauma.Networking.Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(autoPilot);
msg.Write(TryExtractEventData<EventData>(extraData, out var eventData) && eventData.DockingButtonClicked);
msg.Write(user?.ID ?? Entity.NullEntityID);
msg.WriteBoolean(autoPilot);
msg.WriteBoolean(TryExtractEventData<EventData>(extraData, out var eventData) && eventData.DockingButtonClicked);
msg.WriteUInt16(user?.ID ?? Entity.NullEntityID);
if (!autoPilot)
{
//no need to write steering info if autopilot is controlling
msg.Write(steeringInput.X);
msg.Write(steeringInput.Y);
msg.Write(targetVelocity.X);
msg.Write(targetVelocity.Y);
msg.Write(steeringAdjustSpeed);
msg.WriteSingle(steeringInput.X);
msg.WriteSingle(steeringInput.Y);
msg.WriteSingle(targetVelocity.X);
msg.WriteSingle(targetVelocity.Y);
msg.WriteSingle(steeringAdjustSpeed);
}
else
{
msg.Write(posToMaintain != null);
msg.WriteBoolean(posToMaintain != null);
if (posToMaintain != null)
{
msg.Write(((Vector2)posToMaintain).X);
msg.Write(((Vector2)posToMaintain).Y);
msg.WriteSingle(((Vector2)posToMaintain).X);
msg.WriteSingle(((Vector2)posToMaintain).Y);
}
else
{
msg.Write(LevelStartSelected);
msg.WriteBoolean(LevelStartSelected);
}
}
}
@@ -25,39 +25,39 @@ namespace Barotrauma.Items.Components
var eventData = ExtractEventData<EventData>(extraData);
bool launch = eventData.Launch;
msg.Write(launch);
msg.WriteBoolean(launch);
if (launch)
{
msg.Write(User.ID);
msg.Write(launchPos.X);
msg.Write(launchPos.Y);
msg.Write(launchRot);
msg.WriteUInt16(User.ID);
msg.WriteSingle(launchPos.X);
msg.WriteSingle(launchPos.Y);
msg.WriteSingle(launchRot);
}
bool stuck = StickTarget != null && !item.Removed && !StickTargetRemoved();
msg.Write(stuck);
msg.WriteBoolean(stuck);
if (stuck)
{
msg.Write(item.Submarine?.ID ?? Entity.NullEntityID);
msg.Write(item.CurrentHull?.ID ?? Entity.NullEntityID);
msg.Write(item.SimPosition.X);
msg.Write(item.SimPosition.Y);
msg.Write(jointAxis.X);
msg.Write(jointAxis.Y);
msg.WriteUInt16(item.Submarine?.ID ?? Entity.NullEntityID);
msg.WriteUInt16(item.CurrentHull?.ID ?? Entity.NullEntityID);
msg.WriteSingle(item.SimPosition.X);
msg.WriteSingle(item.SimPosition.Y);
msg.WriteSingle(jointAxis.X);
msg.WriteSingle(jointAxis.Y);
if (StickTarget.UserData is Structure structure)
{
msg.Write(structure.ID);
msg.WriteUInt16(structure.ID);
int bodyIndex = structure.Bodies.IndexOf(StickTarget);
msg.Write((byte)(bodyIndex == -1 ? 0 : bodyIndex));
msg.WriteByte((byte)(bodyIndex == -1 ? 0 : bodyIndex));
}
else if (StickTarget.UserData is Entity entity)
{
msg.Write(entity.ID);
msg.WriteUInt16(entity.ID);
}
else if (StickTarget.UserData is Limb limb)
{
msg.Write(limb.character.ID);
msg.Write((byte)Array.IndexOf(limb.character.AnimController.Limbs, limb));
msg.WriteUInt16(limb.character.ID);
msg.WriteByte((byte)Array.IndexOf(limb.character.AnimController.Limbs, limb));
}
else
{
@@ -44,13 +44,13 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(deteriorationTimer);
msg.Write(deteriorateAlwaysResetTimer);
msg.Write(DeteriorateAlways);
msg.Write(tinkeringDuration);
msg.Write(tinkeringStrength);
msg.Write(tinkeringPowersDevices);
msg.Write(CurrentFixer == null ? (ushort)0 : CurrentFixer.ID);
msg.WriteSingle(deteriorationTimer);
msg.WriteSingle(deteriorateAlwaysResetTimer);
msg.WriteBoolean(DeteriorateAlways);
msg.WriteSingle(tinkeringDuration);
msg.WriteSingle(tinkeringStrength);
msg.WriteBoolean(tinkeringPowersDevices);
msg.WriteUInt16(CurrentFixer == null ? (ushort)0 : CurrentFixer.ID);
msg.WriteRangedInteger((int)currentFixerAction, 0, 2);
}
}
@@ -6,25 +6,25 @@ namespace Barotrauma.Items.Components
{
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(Snapped);
msg.WriteBoolean(Snapped);
if (!Snapped)
{
msg.Write(target?.ID ?? Entity.NullEntityID);
msg.WriteUInt16(target?.ID ?? Entity.NullEntityID);
if (source is Entity entity && !entity.Removed)
{
msg.Write(entity?.ID ?? Entity.NullEntityID);
msg.Write((byte)0);
msg.WriteUInt16(entity?.ID ?? Entity.NullEntityID);
msg.WriteByte((byte)0);
}
else if (source is Limb limb && limb.character != null && !limb.character.Removed)
{
msg.Write(limb.character?.ID ?? Entity.NullEntityID);
msg.Write((byte)limb.character.AnimController.Limbs.IndexOf(limb));
msg.WriteUInt16(limb.character?.ID ?? Entity.NullEntityID);
msg.WriteByte((byte)limb.character.AnimController.Limbs.IndexOf(limb));
}
else
{
msg.Write(Entity.NullEntityID);
msg.Write((byte)0);
msg.WriteUInt16(Entity.NullEntityID);
msg.WriteByte((byte)0);
}
}
}
@@ -8,7 +8,7 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(scanTimer);
msg.WriteSingle(scanTimer);
}
}
}
@@ -208,7 +208,7 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(user == null ? (ushort)0 : user.ID);
msg.WriteUInt16(user == null ? (ushort)0 : user.ID);
ClientEventWrite(msg, extraData);
}
}
@@ -72,15 +72,15 @@ namespace Barotrauma.Items.Components
var element = customInterfaceElementList[i];
if (element.HasPropertyName)
{
msg.Write(element.Signal);
msg.WriteString(element.Signal);
}
else if(element.ContinuousSignal)
{
msg.Write(element.State);
msg.WriteBoolean(element.State);
}
else
{
msg.Write(extraData is Item.ComponentStateEventData { ComponentData: EventData eventData } && eventData.BtnElement == customInterfaceElementList[i]);
msg.WriteBoolean(extraData is Item.ComponentStateEventData { ComponentData: EventData eventData } && eventData.BtnElement == customInterfaceElementList[i]);
}
}
}
@@ -38,7 +38,7 @@ namespace Barotrauma.Items.Components
public void ServerEventWrite(IWriteMessage msg, Client c, NetEntityEvent.IData extraData = null)
{
msg.Write(Value);
msg.WriteString(Value);
lastSentValue = Value;
}
}
@@ -101,11 +101,11 @@ namespace Barotrauma.Items.Components
{
if (TryExtractEventData(extraData, out ServerEventData eventData))
{
msg.Write(eventData.MsgToSend);
msg.WriteString(eventData.MsgToSend);
}
else
{
msg.Write(OutputValue);
msg.WriteString(OutputValue);
}
}
}
@@ -41,8 +41,8 @@ namespace Barotrauma.Items.Components
msg.WriteRangedInteger(nodeCount, 0, MaxNodesPerNetworkEvent);
for (int i = nodeStartIndex; i < nodeStartIndex + nodeCount; i++)
{
msg.Write(nodes[i].X);
msg.Write(nodes[i].Y);
msg.WriteSingle(nodes[i].X);
msg.WriteSingle(nodes[i].Y);
}
}