bracket system

This commit is contained in:
h z
2024-07-29 17:24:31 +01:00
parent f6a8f3e899
commit 097e3522a5
12 changed files with 40 additions and 34 deletions

View File

@@ -1,6 +1,7 @@
using Alchegos.DataStructure;
using Enigmos.Cables;
using Enigmos.Modules;
using Enigmos.Modules.ControllingModules;
using Enigmos.Modules.ProgrammableModules;
using Godot;
using Nocturnis.Enigmos.Boards;
@@ -51,14 +52,14 @@ public abstract partial class BaseBoard : Panel, IBaseBoard
public bool ManualOpened { get; set; }
protected HashSet<IBaseModule> Modules { get; set; } = new();
protected IEnumerable<ProgrammableModule> ProgrammableModules() =>
protected IEnumerable<ProgrammableModule> ProgrammableModules =>
Modules
.OfType<ProgrammableModule>();
public IEnumerable<ITerminalModule> TerminalModules =>
Modules
.OfType<ITerminalModule>()
.Union(ProgrammableModules().SelectMany(module => module.UnderlyingBoard!.TerminalModules));
.Union(ProgrammableModules.SelectMany(module => module.UnderlyingBoard!.TerminalModules));
public IPanelViewer PanelViewer { get; set; }
public Dictionary<IBasePort, IBaseCable> CablePairing { get; set; } = new();
@@ -111,8 +112,9 @@ public abstract partial class BaseBoard : Panel, IBaseBoard
pm.Board!.Reset();
foreach (IControllingModule cm in Modules.OfType<IControllingModule>())
cm.Visited = false;
foreach (ITerminalModule tm in Modules.OfType<ITerminalModule>())
tm.Finished = true;
/*
foreach (IBaseModule module in Modules)
{
@@ -141,10 +143,10 @@ public abstract partial class BaseBoard : Panel, IBaseBoard
controllingModule.Visited = false;
if (module is TerminalModule terminalModule)
terminalModule.Finished = false;
foreach (DataOutPort port in module.Ports.OfType<DataOutPort>())
port.DataUpdated = false;
}*/
}