Wire layouts manually navigate the inheritance hierarchy, but the data fields on the prototypes were also automatically inherited already. This meant that inheriting a wire layout prototype and changing nothing would cause the wires to be duplicated unless they were manually modified on top.
Fix is easy: just disable inheritance on the data fields.
Also, integration test for it.
(cherry picked from commit
|
||
|---|---|---|
| .. | ||
| ActivatableUIRequiresPanelComponent.cs | ||
| BaseToggleWireAction.cs | ||
| BaseWireAction.cs | ||
| ComponentWireAction.cs | ||
| IWireAction.cs | ||
| WireLayout.cs | ||
| WiresComponent.cs | ||
| WiresSystem.cs | ||