I'm trying to send signals over a singleton static bus and I'm getting an error:
"SignalBridge.TestSignal" is a type, but is used as a variable. [MiniGames]csharp(CS0118)
Error in Receiver class in the line "SignalBridge.TestSignal += DoSomething"
Signal Bridge:
using Godot;
using System;
namespace Test.SignalBridgeTest
{
public static class SignalBridge
{
[Signal] public delegate void TestSignal();
[Signal] public delegate void TestSignalWithArgument(int number);
}
}
Emitter:
using Godot;
using System;
namespace Test.SignalBridgeTest
{
public partial class Emitter1 : Node
{
[Export] public bool enable = false;
public override void _Process(double delta)
{
if (enable)
{
EmitSignal(nameof(SignalBridge.TestSignal));
}
}
}
}
Receiver:
using Godot;
using System;
namespace Test.SignalBridgeTest
{
public partial class Receiver : Node
{
public override void _Ready()
{
SignalBridge.TestSignal += DoSomething; //ERROR IN THIS LINE
}
public void DoSomething()
{
}
}
}