Skip to content

Commit 6421f76

Browse files
jsm174freezy
authored andcommitted
misc: update LampSequenceUnitWidget to use GleMultiUnitWidget
1 parent e5616a6 commit 6421f76

File tree

3 files changed

+3
-33
lines changed

3 files changed

+3
-33
lines changed

Editor/Widgets/LampSequenceUnitWidget.cs

Lines changed: 2 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -16,48 +16,19 @@
1616

1717
// ReSharper disable UnusedType.Global
1818

19-
using System;
2019
using System.Collections.Generic;
2120
using System.Linq;
2221
using Unity.VisualScripting;
2322

2423
namespace VisualPinball.Unity.VisualScripting.Editor
2524
{
2625
[Widget(typeof(LampSequenceUnit))]
27-
public sealed class LampSequenceUnitWidget : GleUnitWidget<LampSequenceUnit>
26+
public sealed class LampSequenceUnitWidget : GleMultiUnitWidget<LampSequenceUnit>
2827
{
29-
private readonly List<Func<Metadata, VariableNameInspector>> _lampIdInspectorConstructorList;
30-
3128
public LampSequenceUnitWidget(FlowCanvas canvas, LampSequenceUnit unit) : base(canvas, unit)
3229
{
33-
_lampIdInspectorConstructorList = new List<Func<Metadata, VariableNameInspector>>();
3430
}
3531

36-
public override Inspector GetPortInspector(IUnitPort port, Metadata meta)
37-
{
38-
if (_lampIdInspectorConstructorList.Count() < unit.inputCount) {
39-
for (var index = 0; index < unit.inputCount - _lampIdInspectorConstructorList.Count(); index++) {
40-
_lampIdInspectorConstructorList.Add(meta => new VariableNameInspector(meta, GetNameSuggestions));
41-
}
42-
}
43-
44-
for (var index = 0; index < unit.inputCount; index++) {
45-
if (unit.multiInputs[index] == port) {
46-
VariableNameInspector lampIdInspector = new VariableNameInspector(meta, GetNameSuggestions);
47-
InspectorProvider.instance.Renew(ref lampIdInspector, meta, _lampIdInspectorConstructorList[index]);
48-
49-
return lampIdInspector;
50-
}
51-
}
52-
53-
return base.GetPortInspector(port, meta);
54-
}
55-
56-
private IEnumerable<string> GetNameSuggestions()
57-
{
58-
return !GleAvailable
59-
? new List<string>()
60-
: Gle.RequestedLamps.Select(lamp => lamp.Id).ToList();
61-
}
32+
protected override IEnumerable<string> IdSuggestions(IGamelogicEngine gle) => gle.RequestedLamps.Select(lamp => lamp.Id);
6233
}
6334
}

Editor/Widgets/SetLampColorUnitWidget.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,5 @@ public SetLampColorUnitWidget(FlowCanvas canvas, SetLampColorUnit unit) : base(c
3030
}
3131

3232
protected override IEnumerable<string> IdSuggestions(IGamelogicEngine gle) => gle.RequestedLamps.Select(lamp => lamp.Id);
33-
3433
}
3534
}

Runtime/Nodes/Lamps/LampSequenceUnit.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
namespace VisualPinball.Unity.VisualScripting
2424
{
2525
[UnitTitle("Lamp Sequence")]
26-
[UnitSurtitle("Scene")]
26+
[UnitSurtitle("Gamelogic Engine")]
2727
[UnitCategory("Visual Pinball")]
2828
public class LampSequenceUnit : GleUnit, IMultiInputUnit
2929
{

0 commit comments

Comments
 (0)