diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/ConnectionPanel.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/ConnectionPanel.cs index b3f4b4daa..a3f7dab08 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/ConnectionPanel.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/ConnectionPanel.cs @@ -228,7 +228,7 @@ namespace Barotrauma.Items.Components if (Connections[i].Wires.Contains(newWire)) continue; Connections[i].TryAddLink(newWire); - newWire.Connect(Connections[i]); + newWire.Connect(Connections[i], true, true); var otherConnection = newWire.OtherConnection(Connections[i]); diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/Wire.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/Wire.cs index c55837842..94c5dffd3 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/Wire.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/Wire.cs @@ -227,14 +227,17 @@ namespace Barotrauma.Items.Components { if (character == Character.Controlled && character.SelectedConstruction != null) return false; - if (newNodePos!= Vector2.Zero && nodes.Count>0 && Vector2.Distance(newNodePos, nodes[nodes.Count - 1]) > nodeDistance) + if (newNodePos != Vector2.Zero && nodes.Count > 0 && Vector2.Distance(newNodePos, nodes[nodes.Count - 1]) > nodeDistance) { nodes.Add(newNodePos); UpdateSections(); - Drawable = true; - newNodePos = Vector2.Zero; + + if (GameMain.Server != null) + { + item.CreateServerEvent(this); + } } return true; }