Подведи собственные итоги года совместно с YOUGAME и забери ценные призы! Перейти

Вопрос Как сделать описание функции exp 3.1

Типо когда наводишься на функцию в click GUI рядом его описание высвечивалось
на пример когда ты наводишь на функции будет рект с текстом то +- вот так:


private int rectX, rectY, rectWidth, rectHeight;

вот:
Expand Collapse Copy
public void renderTooltipWithRect(MatrixStack matrixStack, int mouseX, int mouseY, String description) {
   
    int textWidth = Minecraft.getInstance().fontRenderer.getStringWidth(description);
   

    rectWidth = textWidth + 8;
    rectHeight = 20;
    rectX = mouseX + 5;
    rectY = mouseY + 5;

 
    fill(matrixStack, rectX, rectY, rectX + rectWidth, rectY + rectHeight, 0x90000000);
   

    Minecraft.getInstance().fontRenderer.drawString(matrixStack, description, rectX + 4, rectY + 6, 0xFFFFFF);
}

у меня как-то так
пан??:
Expand Collapse Copy
[USER=1367676]@override[/USER]
public void render(MatrixStack matrixStack, int mouseX, int mouseY, float partialTicks) {
    super.render(matrixStack, mouseX, mouseY, partialTicks);
   
    if (isMouseOverFunction(mouseX, mouseY)) {
        renderTooltipWithRect(matrixStack, mouseX, mouseY, "");
    }
}

private boolean isMouseOverFunction(int mouseX, int mouseY) {
    int funcX = 50;
    int funcY = 50;
    int funcWidth = 100;
    int funcHeight = 20;
   
    return mouseX >= funcX && mouseX <= funcX + funcWidth && mouseY >= funcY && mouseY <= funcY + funcHeight;
}
на пример когда ты наводишь на функции будет рект с текстом то +- вот так:


private int rectX, rectY, rectWidth, rectHeight;

вот:
Expand Collapse Copy
public void renderTooltipWithRect(MatrixStack matrixStack, int mouseX, int mouseY, String description) {
  
    int textWidth = Minecraft.getInstance().fontRenderer.getStringWidth(description);
  

    rectWidth = textWidth + 8;
    rectHeight = 20;
    rectX = mouseX + 5;
    rectY = mouseY + 5;


    fill(matrixStack, rectX, rectY, rectX + rectWidth, rectY + rectHeight, 0x90000000);
  

    Minecraft.getInstance().fontRenderer.drawString(matrixStack, description, rectX + 4, rectY + 6, 0xFFFFFF);
}

у меня как-то так
пан??:
Expand Collapse Copy
[USER=1367676]@override[/USER]
public void render(MatrixStack matrixStack, int mouseX, int mouseY, float partialTicks) {
    super.render(matrixStack, mouseX, mouseY, partialTicks);
  
    if (isMouseOverFunction(mouseX, mouseY)) {
        renderTooltipWithRect(matrixStack, mouseX, mouseY, "");
    }
}

private boolean isMouseOverFunction(int mouseX, int mouseY) {
    int funcX = 50;
    int funcY = 50;
    int funcWidth = 100;
    int funcHeight = 20;
  
    return mouseX >= funcX && mouseX <= funcX + funcWidth && mouseY >= funcY && mouseY <= funcY + funcHeight;
}
тебе осталось перенести на 3.1 или какая у тя база и дописать
 
Назад
Сверху Снизу