-
Notifications
You must be signed in to change notification settings - Fork 2
Refactor status effect system #422
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
Conversation
- Minimizes allocations - Minimizes boilerplate - Simplifies lifecycle slightly
tomrijnbeek
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I only reviewed the system files, not the implementations. I assume they will change anyway if any of the feedback changes the systems.
A bit of general feedback on the shape of this PR. This PR is big, and ultimately it's trying to do three separate things all at once:
- Allocation optimisation
- Architectural changes
- Style changes
The fact that this is all in one big piece makes it a bit hard to judge on. The allocation optimisation is largely non-controversial and if those had been done in a PR in isolation, would likely have been merged with little comment. The architectural changes are a bit more controversial, and are really the source of the biggest comments I had. The style choices - merging partial classes into a single file - are not really necessary. Especially since this is a PR to a PR, I feel not making stylistic changes helps avoid making the PRs more controversial than they already are.
I understand the argument for merging things into a single PR, but it would've been nice to see the work at least split out in commits, so that:
- It's easier to review the different changes in isolation
- It's easier to cherrypick the changes we want if we agree on the non-controversial stuff but disagree on the controversial topics
Based on #421
This: