Jump to content

[B41.77] Moodle mouseover frame shape always consider 2 lines for height computation.


Tchernobill

Recommended Posts

There is no problem without mod as all vanilla moodles descriptions have one line of title and one of description. (yet, as far as I know).

The problem occures with the Clear description for Moodles mod.

 

The fact the shape always takes only one line of title and one line of description is done by vanilla MoodlesUI.java in render() method

               if (this.MouseOver && var2 == this.MouseOverSlot) {
                  String var15 = this.UseCharacter.getMoodles().getMoodleDisplayString(var3);
                  String var16 = this.UseCharacter.getMoodles().getMoodleDescriptionString(var3);
                  var9 = TextManager.instance.font.getWidth(var15);
                  var10 = TextManager.instance.font.getWidth(var16);
                  int var11 = Math.max(var9, var10);
                  int var12 = TextManager.instance.font.getLineHeight();
                  int var13 = (int)this.MoodleSlotsPos[var3] + 1;
                  int var14 = (2 + var12) * 2;
                  this.DrawTextureScaledColor((Texture)null, -10.0D - (double)var11 - 6.0D, (double)var13 - 2.0D, (double)var11 + 12.0D, (double)var14, 0.0D, 0.0D, 0.0D, 0.6D);
                  this.DrawTextRight(var15, -10.0D, (double)var13, 1.0D, 1.0D, 1.0D, 1.0D);
                  this.DrawTextRight(var16, -10.0D, (double)(var13 + var12), 0.800000011920929D, 0.800000011920929D, 0.800000011920929D, 1.0D);
               }

 

Modders could compensate by adding the missing part from lua code but I prefer to ask TIS to make it more generic.

instead of

int var12 = TextManager.instance.font.getLineHeight();


it could use something like

int var12 = TextManager.instance.font.getHeight(var15);

 

instead of

int var14 = (2 + var12) * 2;


it could use something like

int var14 = var12+TextManager.instance.font.getHeight(var16)+4;

 

Edited by Tchernobill
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...