Files
Enigmos/Modules/ControllingModules/ActionModules/AttackActionModule.cs
2024-06-29 06:35:23 +08:00

35 lines
1.0 KiB
C#

using Enigmos.Ports;
using Enigmos.Ports.DataPorts;
using Enigmos.Ports.SignalPorts;
using TabulaSmaragdina.Constants;
namespace Enigmos.Modules.ControllingModules.ActionModules;
public partial class AttackActionModule : ActionModule
{
private SignalInPort SignalIn1 { get; set; }
private SignalInPort SignalIn2 { get; set; }
private SignalInPort SignalIn3 { get; set; }
private SignalInPort SignalIn4 { get; set; }
private DataInPort Input1 { get; set; }
public override IEnumerable<BasePort> Ports =>
new BasePort[] { SignalIn1, SignalIn2, SignalIn3, SignalIn4, Input1 };
public override void Init()
{
base.Init();
SignalIn1 = GetNode<SignalInPort>("SignalIn1");
SignalIn2 = GetNode<SignalInPort>("SignalIn2");
SignalIn3 = GetNode<SignalInPort>("SignalIn3");
SignalIn4 = GetNode<SignalInPort>("SignalIn4");
Input1 = GetNode<DataInPort>("Input1");
Input1.SetDataType(EnigmosConstant.DataPortTypes.R2);
PostInit();
}
protected override void Execute(RootModule root) =>
root.ManagedBy.Action.Attack(Input1.GetData(root).R2);
}