Skip to content

Commit bf4d804

Browse files
committed
Fix model overrides for brew vial/flask and mana bottle
(fixes #4842)
1 parent d95a8bd commit bf4d804

File tree

7 files changed

+34
-26
lines changed

7 files changed

+34
-26
lines changed

Xplat/src/generated/resources/.cache/e50b421f53620945aa4912c1c2808ee8f6be1628

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Xplat/src/generated/resources/assets/botania/models/item/brew_flask.json

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Xplat/src/generated/resources/assets/botania/models/item/brew_vial.json

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Xplat/src/generated/resources/assets/botania/models/item/mana_bottle.json

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Xplat/src/main/java/vazkii/botania/client/BotaniaItemProperties.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,11 @@ public static void init(TriConsumer<ItemLike, ResourceLocation, ClampedItemPrope
3030
consumer.accept(BotaniaItems.blackHoleTalisman, botaniaRL("active"),
3131
(stack, world, entity, seed) -> stack.has(BotaniaDataComponents.ACTIVE) ? 1 : 0);
3232
consumer.accept(BotaniaItems.manaBottle, botaniaRL("swigs_taken"),
33-
(stack, world, entity, seed) -> BottledManaItem.SWIGS - BottledManaItem.getSwigsLeft(stack));
33+
(stack, world, entity, seed) -> {
34+
int swigsLeft = BottledManaItem.getSwigsLeft(stack) - 1;
35+
int totalSwigs = BottledManaItem.SWIGS - 1;
36+
return swigsLeft == totalSwigs ? 0.0F : Math.nextUp((totalSwigs - swigsLeft) / (float) totalSwigs);
37+
});
3438

3539
ResourceLocation vuvuzelaId = botaniaRL("vuvuzela");
3640
ClampedItemPropertyFunction isVuvuzela = (stack, world, entity, seed) -> stack.getHoverName().getString().toLowerCase(Locale.ROOT).contains("vuvuzela") ? 1 : 0;
@@ -67,7 +71,9 @@ public static void init(TriConsumer<ItemLike, ResourceLocation, ClampedItemPrope
6771

6872
ClampedItemPropertyFunction brewGetter = (stack, world, entity, seed) -> {
6973
BaseBrewItem item = ((BaseBrewItem) stack.getItem());
70-
return item.getSwigs(stack) - item.getSwigsLeft(stack);
74+
int swigsLeft = item.getSwigsLeft(stack) - 1;
75+
int totalSwigs = item.getSwigs(stack) - 1;
76+
return swigsLeft == totalSwigs ? 0.0F : Math.nextUp((totalSwigs - swigsLeft) / (float) totalSwigs);
7177
};
7278
consumer.accept(BotaniaItems.brewVial, botaniaRL("swigs_taken"), brewGetter);
7379
consumer.accept(BotaniaItems.brewFlask, botaniaRL("swigs_taken"), brewGetter);

Xplat/src/main/java/vazkii/botania/common/item/BotaniaItems.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -380,9 +380,9 @@ public final class BotaniaItems {
380380
// Brewing
381381
public static final Item vial = make(LibItemNames.VIAL, new VialItem(defaultBuilder()));
382382
public static final Item flask = make(LibItemNames.FLASK, new VialItem(defaultBuilder()));
383-
public static final Item brewVial = make(LibItemNames.BREW_VIAL, new BaseBrewItem(unstackable()
383+
public static final BaseBrewItem brewVial = make(LibItemNames.BREW_VIAL, new BaseBrewItem(unstackable()
384384
.component(BotaniaDataComponents.MAX_USES, BaseBrewItem.DEFAULT_USES_VIAL), 32, () -> vial));
385-
public static final Item brewFlask = make(LibItemNames.BREW_FLASK, new BaseBrewItem(unstackable()
385+
public static final BaseBrewItem brewFlask = make(LibItemNames.BREW_FLASK, new BaseBrewItem(unstackable()
386386
.component(BotaniaDataComponents.MAX_USES, BaseBrewItem.DEFAULT_USES_FLASK), 24, () -> flask));
387387
public static final Item bloodPendant = make(LibItemNames.BLOOD_PENDANT, new TaintedBloodPendantItem(unstackable()));
388388
public static final Item incenseStick = make(LibItemNames.INCENSE_STICK, new IncenseStickItem(unstackable()));

Xplat/src/main/java/vazkii/botania/data/ItemModelProvider.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@
4040
import vazkii.botania.common.block.decor.PetalBlock;
4141
import vazkii.botania.common.block.mana.ManaPoolBlock;
4242
import vazkii.botania.common.block.mana.ManaSpreaderBlock;
43+
import vazkii.botania.common.item.BottledManaItem;
44+
import vazkii.botania.common.item.brew.BaseBrewItem;
4345
import vazkii.botania.common.item.lens.LensItem;
4446
import vazkii.botania.common.item.material.MysticalPetalItem;
4547
import vazkii.botania.common.lib.LibMisc;
@@ -202,13 +204,13 @@ private static void registerItemOverrides(Set<Item> items, BiConsumer<ResourceLo
202204
items.remove(blackHoleTalisman);
203205

204206
OverrideHolder flaskOverrides = new OverrideHolder();
205-
for (int i = 1; i <= 5; i++) {
207+
for (int i = 1; i < BaseBrewItem.DEFAULT_USES_FLASK; i++) {
206208
ResourceLocation overrideModel = ModelLocationUtils.getModelLocation(brewFlask, "_" + i);
207209
GENERATED_1.create(overrideModel,
208210
TextureMapping.layer0(flask).put(LAYER1, overrideModel),
209211
consumer);
210212

211-
flaskOverrides.add(overrideModel, Pair.of(botaniaRL("swigs_taken"), (double) i));
213+
flaskOverrides.add(overrideModel, Pair.of(botaniaRL("swigs_taken"), (double) i / (BaseBrewItem.DEFAULT_USES_FLASK - 1)));
212214
}
213215
GENERATED_OVERRIDES_1.create(ModelLocationUtils.getModelLocation(brewFlask),
214216
TextureMapping.layer0(flask).put(LAYER1, TextureMapping.getItemTexture(brewFlask, "_0")),
@@ -217,12 +219,12 @@ private static void registerItemOverrides(Set<Item> items, BiConsumer<ResourceLo
217219
items.remove(brewFlask);
218220

219221
OverrideHolder vialOverrides = new OverrideHolder();
220-
for (int i = 1; i <= 3; i++) {
222+
for (int i = 1; i < BaseBrewItem.DEFAULT_USES_VIAL; i++) {
221223
ResourceLocation overrideModel = ModelLocationUtils.getModelLocation(brewVial, "_" + i);
222224
GENERATED_1.create(overrideModel,
223225
TextureMapping.layer0(vial).put(LAYER1, overrideModel),
224226
consumer);
225-
vialOverrides.add(overrideModel, Pair.of(botaniaRL("swigs_taken"), (double) i));
227+
vialOverrides.add(overrideModel, Pair.of(botaniaRL("swigs_taken"), (double) i / (BaseBrewItem.DEFAULT_USES_VIAL - 1)));
226228
}
227229
GENERATED_OVERRIDES_1.create(ModelLocationUtils.getModelLocation(brewVial),
228230
TextureMapping.layer0(vial).put(LAYER1, TextureMapping.getItemTexture(brewVial, "_0")),
@@ -259,10 +261,10 @@ private static void registerItemOverrides(Set<Item> items, BiConsumer<ResourceLo
259261
items.remove(magnetRingGreater);
260262

261263
OverrideHolder bottleOverrides = new OverrideHolder();
262-
for (int i = 1; i <= 5; i++) {
264+
for (int i = 1; i < BottledManaItem.SWIGS; i++) {
263265
ResourceLocation overrideModel = ModelLocationUtils.getModelLocation(manaBottle, "_" + i);
264266
ModelTemplates.FLAT_ITEM.create(overrideModel, TextureMapping.layer0(overrideModel), consumer);
265-
bottleOverrides.add(overrideModel, Pair.of(botaniaRL("swigs_taken"), (double) i));
267+
bottleOverrides.add(overrideModel, Pair.of(botaniaRL("swigs_taken"), (double) i / (BottledManaItem.SWIGS - 1)));
266268
}
267269
GENERATED_OVERRIDES.create(ModelLocationUtils.getModelLocation(manaBottle),
268270
TextureMapping.layer0(manaBottle),

0 commit comments

Comments
 (0)