The MS Documentation page on Action says that this wrapper “encapsulates a method that has a single parameter and does not return a value.” This is also what most tutorials says. However, I seem to have no problems doing this in Unity:
public static Action OnLevelStarted;
And then, later:
OnLevelStarted();
Other classes subscribe to this as usual (with +=) and everything seems to work. It’s much more concise than having Delegates and Events declarations all over the place, and it doesn’t seem to require a parameter (although it works nicely when it uses one). Is there some sort of magic here? How come I get no errors when using an Action without any parameters?