(1.18.2) (Mod Conflict) Banners have missing textures
corgiblu opened this issue ยท 3 comments
All Alex's Mobs banners have missing texture instead of pattern. I've done testing against several mods but none of them seem to be the culprit (including but not limited to: refined storage, twilight forest, rubidium, and quark).
Doing research I was able to figure out it's a mod conflict but all of the issues are 1.16 and after testing all the mods listed in those issues I still can't figure it out. Any insight would be wonderful.
Seems to be an issue with the Blue Skies mod. I have also reported this to Blue Skies as I am not sure which mod would be able to fix the issue.
https://gitlab.com/modding-legacy/blue-skies/-/issues/120
Blue Skies guy here. Hi o/
I looked into the issue on our end, and it looks to me like it's a timing issue. In Blue Skies, we have custom sign textures. We register those to Sheets.SIGN_MATERIALS
when the mod is initialized. When that happens, the order of events is
- Blue Skies adds signs /
Sheets.BANNER_PATTERNS
gets initialized - Item registry happens, which extends the BannerPattern enum with your custom patterns. Since
Sheets
was already initialized, your patterns won't be in the banner pattern map. Sheets.getAllMaterials
gets called to load textures (your patterns aren't present).- When
FMLClientSetupEvent
fires, you add the banner patterns to the map, but it's already too late by then since the data in the map has already been used to initialize textures.
Without Blue Skies, the Sheets class won't be initialized and things work fine. It'd be nice if we had a proper time to do this in Forge. Maybe that'd be worth a small PR.
A simple solution would be moving the stuff that adds to Sheets.BANNER_PATTERNS
to when the mod initializes. Probably could be handled in your proxy classes. Then that guarantees that your patterns will always exist.