dop2000
> That is very bad for the editor. I don't know if you've ever made a large project on Construct 2 or Construct 3 or any game engine.
I have and you are not making any sense.
Say I have an event sheet named "General Functions" with functions like "getValue()" and "setValue()", which I need throughout my project and therefore have to include it in all other event sheets. Which is a bit of a nuisance. What I'm suggesting is a single checkbox to mark this event sheet as Global. How is it different (performance-wise) from including this event sheet to all other event sheets?
You should have just said Global Event Sheets. The Global List you've mentioned was misleading. You should've added more details, it could just be anything like a Global List of Events / Functions. Which is vague or different from your original reply.
Anyway, you are asking for a feature that would instead limit functions to a single event sheet! You missed the point, that is not how modular events work.
Here are some breakdown cases:
- What if the function is needed to be close or under its Group or Mutual Events? If you move those to the Global Event Sheet, you break code organization.
- You are missing the point. Because groups are the only reason there are pseudo block scopes in Construct 2 and Construct 3. And that is a key feature in modular events. And now you want to take that away from functions? You want them to be always global. We might as well use Includes. That is some redundant feature. As I've mentioned, don't add redundant features, that is bad for editors.
My solution is far more practical, flexible and creative, with more possibilities. A Function plugin with an indicator, it is as easy as it gets. And we don't get to add more editor changes.
But if you want to talk about additional features.
Construct Team can even find a way to make a filter of functions available for every event sheet so that whenever you choose an event sheet, it only shows the functions you can call. Could even make it a separate plugin, could even add function dependencies to include other functions that might be required manually or even automatically.