mirror of
https://github.com/Creators-of-Create/Create.git
synced 2025-02-05 09:54:59 +01:00
feat: Allow changing the goggle overlay tooltip icon (#5900)
* feat: allow changing the goggle overlay tooltip icon * change method name
This commit is contained in:
parent
8ffc4ef96a
commit
c4098b31b2
2 changed files with 24 additions and 6 deletions
|
@ -91,11 +91,16 @@ public class GoggleOverlayRenderer {
|
|||
boolean goggleAddedInformation = false;
|
||||
boolean hoverAddedInformation = false;
|
||||
|
||||
ItemStack item = AllItems.GOGGLES.asStack();
|
||||
|
||||
List<Component> tooltip = new ArrayList<>();
|
||||
|
||||
if (hasGoggleInformation && wearingGoggles) {
|
||||
boolean isShifting = mc.player.isShiftKeyDown();
|
||||
|
||||
IHaveGoggleInformation gte = (IHaveGoggleInformation) be;
|
||||
goggleAddedInformation = gte.addToGoggleTooltip(tooltip, mc.player.isShiftKeyDown());
|
||||
goggleAddedInformation = gte.addToGoggleTooltip(tooltip, isShifting);
|
||||
item = gte.getIcon(isShifting);
|
||||
}
|
||||
|
||||
if (hasHoveringInformation) {
|
||||
|
@ -203,7 +208,7 @@ public class GoggleOverlayRenderer {
|
|||
RemovedGuiUtils.drawHoveringText(poseStack, tooltip, posX, posY, width, height, -1, colorBackground.getRGB(),
|
||||
colorBorderTop.getRGB(), colorBorderBot.getRGB(), mc.font);
|
||||
|
||||
ItemStack item = AllItems.GOGGLES.asStack();
|
||||
|
||||
GuiGameElement.of(item)
|
||||
.at(posX + 10, posY - 16, 450)
|
||||
.render(poseStack);
|
||||
|
|
|
@ -3,12 +3,14 @@ package com.simibubi.create.content.equipment.goggles;
|
|||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
import com.simibubi.create.AllItems;
|
||||
import com.simibubi.create.foundation.utility.Components;
|
||||
import com.simibubi.create.foundation.utility.Lang;
|
||||
import com.simibubi.create.foundation.utility.LangBuilder;
|
||||
|
||||
import net.minecraft.ChatFormatting;
|
||||
import net.minecraft.network.chat.Component;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
import net.minecraftforge.common.util.LazyOptional;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
import net.minecraftforge.fluids.capability.IFluidHandler;
|
||||
|
@ -40,6 +42,17 @@ public interface IHaveGoggleInformation {
|
|||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* this method will be called when looking at a BlockEntity that implemented this
|
||||
* interface
|
||||
* <p>
|
||||
* return the item of your choosing after checking for any logic you wish, and the goggle on the goggle
|
||||
* tooltip will be replaced with the item you have returned
|
||||
*/
|
||||
default ItemStack getIcon(boolean isPlayerSneaking) {
|
||||
return AllItems.GOGGLES.asStack();
|
||||
}
|
||||
|
||||
default boolean containedFluidTooltip(List<Component> tooltip, boolean isPlayerSneaking,
|
||||
LazyOptional<IFluidHandler> handler) {
|
||||
Optional<IFluidHandler> resolve = handler.resolve();
|
||||
|
|
Loading…
Reference in a new issue