Standardize GUI Textures
Electrocutor opened this issue ยท 8 comments
Enhancement Request
Standardize GUI with vanilla resources.
Justification
If Minecolonies references vanilla resources for use in the GUI, then it will match vanilla and also any resource pack a person uses will be reflected as well.
Suggestions
- Hut background and paging: gui/book or gui/recipe_book
- Icon tab background: gui/recipe_book or gui/advancements/tabs
- Text tab background: gui/widgets
- 2x2 learn recipe grid: gui/container/inventory
- 3x3 learn recipe grid: gui/container/crafting_table
- generic item list background: gui/recipe_book or gui/book
- button backgrounds: gui/widgets
- left/right up/down arrows: gui/resource_packs
- check and cancel icons: gui/container/beacon
MineColonies Resource Pack
After the GUI utilizes vanilla resources, you could optionally create a small resource pack that changes vanilla into an aesthetic that you prefer for its medieval-esque direction and make it available for download.
I've tinkered with this a little and it seems to not currently be possible because the Image, ImageButton, etc classes do not act like minecraft in translating a multiplier to texture resolution, and imageoffset/imagesize do not accept percentage input.
The problem is if we will replace textures with vanilla ones then our texture pack will swap every minecraft button which is not what we want
Isn't it though? This way minecraft would look how the person playing it wants it to be: if they want the minecolonies look, then they get it; if they want the vanilla look, then minecolonies looks vanilla.
Yes, I am currently editing gui/citizen/main.xml, attempting to make the background look right, but the Image class does not multiply for texture dimensions, and it seems to also ignore the imagesize parameter (always using the full texture width/height instead). imageoffset works, just doesn't multiply for change in res.
The vanilla version should be:
<image source="textures/gui/book.png" imageoffset="19 0" imagesize="147 155" size="190 244"/>
autoscale="false" does nothing, it just scales anyway
imagesize="x y" does not clip the image at all, it just overwrites the parent 'size' so is the same as setting size="x y", meaning that using a partial image or icon library texture cannot be done.
I'm done tinkering for now unless someone knows if this can work somehow.