Code/net/minecraft/client/gui/screens/inventory/tooltip/BelowOrAboveWidgetTooltipPo...

32 lines
1.1 KiB
Java
Raw Permalink Normal View History

2025-07-01 06:20:03 +00:00
package net.minecraft.client.gui.screens.inventory.tooltip;
import net.minecraft.client.gui.navigation.ScreenRectangle;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import org.joml.Vector2i;
import org.joml.Vector2ic;
@OnlyIn(Dist.CLIENT)
public class BelowOrAboveWidgetTooltipPositioner implements ClientTooltipPositioner {
private final ScreenRectangle screenRectangle;
public BelowOrAboveWidgetTooltipPositioner(ScreenRectangle p_312932_) {
this.screenRectangle = p_312932_;
}
@Override
public Vector2ic positionTooltip(int p_282513_, int p_281649_, int p_283308_, int p_282740_, int p_281398_, int p_283404_) {
Vector2i vector2i = new Vector2i();
vector2i.x = this.screenRectangle.left() + 3;
vector2i.y = this.screenRectangle.bottom() + 3 + 1;
if (vector2i.y + p_283404_ + 3 > p_281649_) {
vector2i.y = this.screenRectangle.top() - p_283404_ - 3 - 1;
}
if (vector2i.x + p_281398_ > p_282513_) {
vector2i.x = Math.max(this.screenRectangle.right() - p_281398_ - 3, 4);
}
return vector2i;
}
}