Files
Enigmos/Modules/ControllingModules/ActionModules/MoveActionModule.cs
2024-07-03 12:20:08 +08:00

40 lines
1.0 KiB
C#

using Enigmos.Ports.DataPorts;
using Enigmos.Ports.SignalPorts;
using Nocturnis.Enigmos.Modules;
using Nocturnis.Enigmos.Ports;
using Nocturnis.Enigmos.Ports.DataPorts.Directions;
using Nocturnis.GlobalManagement.Constants;
using Nocturnis.GlobalManagement.Controls;
namespace Enigmos.Modules.ControllingModules.ActionModules;
public partial class MoveActionModule : ActionModule, ITerminalModule
{
public IDataInPort[] DataInPorts { get; set; } = Array.Empty<IDataInPort>();
public void Drain()
{
foreach (IDataInPort ip in DataInPorts)
_ = ip.GetData.Get;
}
public override IEnumerable<IBasePort> Ports => DataInPorts.Union(SignalInPorts.Cast<IBasePort>());
public override void Init()
{
base.Init();
this.DataInInit("Input", 1);
this.SignalInInit("SignalIn", 4);
DataInPorts[0].SetDataType(EnigmosConstant.DataPortTypes.R2);
PostInit();
}
public override string GetDescription => "";
public override void Act()
{
CreatureControl.Instance.CurrentCharacter!.Action.Attack(DataInPorts[0].GetData.Get!.R2);
}
}