Начинающий
- Статус
- Оффлайн
- Регистрация
- 8 Янв 2023
- Сообщения
- 43
- Реакции
- 1
ss -
Java:
float x = dragging.getX();
float y = dragging.getY();
final MatrixStack matrixStack = e.getMatrixStack(); // евент из метода
RenderUtil.drawShadow(x, y, width, height, 10, ColorUtils.rgba(0, 0, 0, 62));
RenderUtil.drawRoundedRect(x, y, width, height, 3, ColorUtils.rgba(16, 16, 16, 120));
RenderUtil.drawShadow(x, y, width, height, 10, ColorUtils.rgba(0, 0, 0, 62));
Fonts.montserrat.get(14).drawString(matrixStack, "Броня", x + 5, y + 5, -1);
int posX = (int) x + 3;
int posY = (int) y + 63;
for (ItemStack itemStack : mc.player.getArmorInventoryList()) {
if (!itemStack.isEmpty()) {
mc.getItemRenderer().renderItemAndEffectIntoGUI(itemStack, posX, posY);
// mc.getItemRenderer().renderItemOverlayIntoGUI(mc.fontRenderer, itemStack, posX, posY, null);
float damagePercentage = (itemStack.getDamage() * 100.0f) / itemStack.getMaxDamage();
int red = (int) (255 * (damagePercentage / 100));
int green = 255 - red;
int barHeight2 = Math.round((45 * (100 - damagePercentage)) / 100);
RenderUtil.drawRoundedRect(posX + 20, posY + 6, 45, 3, 1, ColorUtils.rgba(15, 15, 15));
RenderUtil.drawRoundedRect(posX + 20, posY + 6, barHeight2, 3, 1, ColorUtils.rgba(red, green, 0));
Fonts.montserrat.get(14).drawCenteredString(matrixStack, (100 - (itemStack.getDamage() * 100) / itemStack.getMaxDamage()) + "%", posX + width - 20, posY + 4, -1);
} else {
// просто крестик сами отрендерите
}
posY -= 16;
}
width = 100;
height = 79;
dragging.setWidth(width);
dragging.setHeight(height);