using Enigmos.Ports.DataPorts; using Godot; using Nocturnis.Enigmos.Modules; using Nocturnis.Enigmos.Ports; namespace Enigmos.Modules.InterlayerModules; public partial class InterlayerDataInModule : BaseModule, IInterlayerDataInModule { protected override bool HasManual => false; public override Vector2 PositionToBoard => base.PositionToBoard + (ParentModule?.PositionToBoard ?? Vector2.Zero); public IProgrammableModule? ParentModule { get; set; } protected override bool Draggable => false; public IBasePort? UnderlyingPort => DataIn; public IInterlayerDataOutModule? DualModule { get; set; } public IDataInPort? DataIn { get; set; } public override IEnumerable Ports => new[] { DataIn }!; public override void Init() { base.Init(); DataIn = GetPort("DataIn"); PostInit(); } }