Refactor how PoB handles item types and subTypes #688
+4,266
−1,980
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.
Description of the problem being solved:
GGG uses classes and categories internally, for example in PoE 1 A Sceptre is a class called Sceptre and a category called One Hand Mace. As we have our own special type/subType system it become annoying to make mapping between these formats and they have to be manually manged which can lead to issue such as when we ported our changes to PoE 2. GGG is not super consistent with labels and while this isn't a problem so much in PoE 2 due to most items having their labels it is problematic in PoE 1 e.g. abyss jewels uses a special label that must be hard coded which makes it easier to just hard code all labels.
This also automatically handles different item stat types, now called the type catgory which refers to wether is a evasion/es/armour equipment.
There is an issue that isn't super desirable is that all jewels are considered to be of the same class so they all get squashed together now. The label Charm: Utility Flask isn't very nice either.
Todo:
Before screenshot:
After screenshot: