A game about forced loneliness, made by TACStudios
1using System.Collections.Generic;
2using System.Linq;
3
4namespace Unity.VisualScripting
5{
6 public sealed class InvalidOutput : UnitPort<IUnitInputPort, IUnitInputPort, InvalidConnection>, IUnitInvalidPort, IUnitOutputPort
7 {
8 public InvalidOutput(string key) : base(key) { }
9
10 public override IEnumerable<InvalidConnection> validConnections => unit?.graph?.invalidConnections.WithSource(this) ?? Enumerable.Empty<InvalidConnection>();
11
12 public override IEnumerable<InvalidConnection> invalidConnections => Enumerable.Empty<InvalidConnection>();
13
14 public override IEnumerable<IUnitInputPort> validConnectedPorts => validConnections.Select(c => c.destination);
15
16 public override IEnumerable<IUnitInputPort> invalidConnectedPorts => invalidConnections.Select(c => c.destination);
17
18 public override bool CanConnectToValid(IUnitInputPort port)
19 {
20 return false;
21 }
22
23 public override void ConnectToValid(IUnitInputPort port)
24 {
25 ConnectInvalid(this, port);
26 }
27
28 public override void ConnectToInvalid(IUnitInputPort port)
29 {
30 ConnectInvalid(this, port);
31 }
32
33 public override void DisconnectFromValid(IUnitInputPort port)
34 {
35 DisconnectInvalid(this, port);
36 }
37
38 public override void DisconnectFromInvalid(IUnitInputPort port)
39 {
40 DisconnectInvalid(this, port);
41 }
42
43 public override IUnitPort CompatiblePort(IUnit unit)
44 {
45 return null;
46 }
47 }
48}