DieReicheErethons / Brewery

GNU General Public License v3.0
161 stars 182 forks source link

texture of the brew #602

Open ShyXun4 opened 9 months ago

ShyXun4 commented 9 months ago

Hello, I'd like to know if it's possible to modify the textures of the drinks in the plugin, so as to have a different texture for beer, for example. If so, how ?

Loapu commented 8 months ago

You can add custom model data in your config file. As the plugin only uses glass bottles, you would need to have a resource pack that changes this texture based on custom model data.

Mikkel136 commented 7 months ago

You can refer to recipe "ex" (example item) in the default config for more info. But to sum it up:

Add the string "customModelData: [number]" to specify an custom texture ID you'll be able to target using a Resource Pack

Note: If there are multiple variations, like with beer, you can also specify a custom texture as such: "customModelData: 556/557/558" (bad brew texture ID/better brew texture ID/perfect brew texture ID)

To target this ID with a resource pack, you'll need to go through a few steps.

First, include your new textures in your resource pack. Example: "_assets/minecraft/textures/item"

Then, make a new directory "assets/minecraft/models/item" and create a new file called "potion.json"

In potion.json, add the following content: `{ "parent": "item/generated", "textures": { "layer0": "item/potion_overlay", "layer1": "item/potion" },

"overrides": [
    {
        "predicate": {"custom_model_data":557}, "model": "item/beer"
    }
]

}`

See how we define texture overrides? If you'd like multiple versions, you can do them as such: "overrides": [ {"predicate": {"custom_model_data":556}, "model": "item/bad_beer"}, {"predicate": {"custom_model_data":557}, "model": "item/beer"}, {"predicate": {"custom_model_data":558}, "model": "item/perfect_beer"} ]

When that's done, go back to your models folder. Depending on preferences, either make one new file for "beer.json" or alternatively, three new files: "bad_beer.json", "beer.json" and "perfect_beer.json"

Inside this/these new file(s), add the following: { "parent": "item/generated", "textures": { "layer0": "item/beer", "layer1": "item/beer" } } (or bad_beer/perfect_beer/whatever)

Main1Ace commented 4 months ago

ex

Add the string "__

Note:****

To target this ID with a resource pack

First, include your new textures in your resource pack. Example: "_assets/minecraft/textures/item"

Then, make a new directory "assets/minecraft/models/item" and create a new file called "potion.json"

In potion.json, add the following content: `{ "parent": "item/generated", "textures": { "layer0": "item/potion_overlay", "layer1": "item/potion" },

"overrides": [
  {
      "predicate": {"custom_model_data":557}, "model": "item/beer"
  }
]

}`

See how we define texture overrides? If you'd like multiple versions, you can do them as such: "overrides": [ {"predicate": {"custom_model_data":556}, "model": "item/bad_beer"}, {"predicate": {"custom_model_data":557}, "model": "item/beer"}, {"predicate": {"custom_model_data":558}, "model": "item/perfect_beer"} ]

When that's done, go back to your models folder. Depending on preferences, either make one new file for "beer.json" or alternatively, three new files: "bad_beer.json", "beer.json" and "perfect_beer.json"

Inside this/these new file(s), add the following: { "parent": "item/generated", "textures": { "layer0": "item/beer", "layer1": "item/beer" } } (or bad_beer/perfect_beer/whatever)

Is there a ready-made version of the Brewery resource pack?