Skip to content

Run criteria attaching prototype #12

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

Ratysz
Copy link
Contributor

@Ratysz Ratysz commented Aug 5, 2021

This is not inteded to be merged as is.

A rough prototype of how to let users attach their own run criteria to systems of the plugin - this is the building block that lets enabling/disabling the plugin via user-defined states. I haven't considered if the criteria even make sense on all of these systems.

The main hurdle in the way of making this less gnarly is that Bevy's run criteria (and thus states) are stage-specific. Plans to mitigate that do exist, but aren't quite ready yet; resolving this would make a single copy of a criteria (or label) sufficient for the entire config, instead of a producer function (aka bootleg clone).

Another thing I'm not sure if I like is that the nested plugins have to rely on the same config struct as the top-level plugin. This might be possible to rework, but I don't know how valuable would that be in this context.

@Ratysz
Copy link
Contributor Author

Ratysz commented Oct 23, 2021

Closing, mostly superseded by #13: it doesn't allow the "neat" custom run criteria attaching, but I think that's fine. Unfortunately, it looks like we'll have to rely on "pub everything" for cases where plugin customizability is needed, until a good method is developed and endorsed by the ecosystem, or (more preferably) Bevy gains a first-party solution to problems like these.

@Ratysz Ratysz closed this Oct 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant