Core: add a new API for an itempool counter #2381
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What is this fixing or adding?
A new API where the World will create a
self.itempool: Counter[str]
instead of creating item objects and adding them to the multiworld itempool. Also adds acreate_filler_items
step where the amount of items still needed for that particular world is passed. This step takes place after plando and pre_fill, to give an accurate count, with the itempool being refreshed just before.This is currently lacking using the counter in reference for plando, and the items are being created as soon as the world's create_items is done so that state can collect them as necessary.
How was this tested?
Moved messenger over to it and did some generations and ran unit tests
If this makes graphical changes, please attach screenshots.