Program: 171396
Project: 171396
Buggy source:
@Override public void handleEvent(Event event){
  if (item != null || (coreItem instanceof AbstractItem)) {
    if (coreItem != null)     item=(AbstractItem)coreItem;
    int yIncrease=0;
    if (Main.game.getDialogueFlags().tradePartner != null) {
      yIncrease+=2;
    }
    if (item.getItemEffects().size() > 0) {
      for (      ItemEffect ie : item.getItemEffects()) {
        yIncrease+=ie.getEffectsDescription(Main.game.getPlayer(),Main.game.getPlayer()).size();
      }
    }
    Main.mainController.setTooltipSize(360,290 + (20 * yIncrease));
    tooltipSB.setLength(0);
    tooltipSB.append("String_Node_Str" + Util.capitaliseSentence(item.getDisplayName(true)) + "String_Node_Str");
    if (item.getItemEffects().size() > 0) {
      tooltipSB.append("String_Node_Str");
      int ieCount=0;
      for (      ItemEffect ie : item.getItemEffects()) {
        if (ieCount > 0)         tooltipSB.append("String_Node_Str");
        ieCount++;
        for (int i=0; i < ie.getEffectsDescription(Main.game.getPlayer(),Main.game.getPlayer()).size(); i++) {
          if (i != 0)           tooltipSB.append("String_Node_Str");
          tooltipSB.append(ie.getEffectsDescription(Main.game.getPlayer(),Main.game.getPlayer()).get(i));
        }
      }
      tooltipSB.append("String_Node_Str");
    }
    tooltipSB.append("String_Node_Str" + (item.isConsumedOnUse() ? "String_Node_Str" + Colour.GENERIC_BAD.toWebHexString() + "String_Node_Str" : "String_Node_Str" + Colour.GENERIC_GOOD.toWebHexString() + "String_Node_Str") + "String_Node_Str"+ "String_Node_Str"+ (item.isAbleToBeUsedInCombat() ? (item.isAbleToBeUsedInSex() ? "String_Node_Str" + Colour.GENERIC_COMBAT.toWebHexString() + "String_Node_Str"+ Colour.GENERIC_SEX.toWebHexString()+ "String_Node_Str" : "String_Node_Str" + Colour.GENERIC_COMBAT.toWebHexString() + "String_Node_Str") : (item.isAbleToBeUsedInSex() ? "String_Node_Str" + Colour.GENERIC_SEX.toWebHexString() + "String_Node_Str" : "String_Node_Str"))+ "String_Node_Str"+ "String_Node_Str"+ UtilText.parse(item.getDescription())+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ com.base.utils.Colour.CURRENCY.toWebHexString()+ "String_Node_Str"+ Main.game.getCurrencySymbol()+ "String_Node_Str"+ item.getValue()+ "String_Node_Str"+ "String_Node_Str");
    if (Main.game.getDialogueFlags().tradePartner != null) {
      if (owner.isPlayer()) {
        if (Main.game.getDialogueFlags().tradePartner.willBuy(item))         tooltipSB.append("String_Node_Str" + Main.game.getDialogueFlags().tradePartner.getName("String_Node_Str") + "String_Node_Str"+ "String_Node_Str"+ com.base.utils.Colour.CURRENCY.toWebHexString()+ "String_Node_Str"+ Main.game.getCurrencySymbol()+ "String_Node_Str"+ ((int)(Main.game.getDialogueFlags().tradePartner.getBuyModifier() * item.getValue()))+ "String_Node_Str"+ "String_Node_Str");
 else         tooltipSB.append("String_Node_Str" + "String_Node_Str" + Colour.TEXT_GREY.toWebHexString() + "String_Node_Str"+ Main.game.getDialogueFlags().tradePartner.getName("String_Node_Str")+ "String_Node_Str"+ "String_Node_Str");
      }
 else {
        tooltipSB.append("String_Node_Str" + Main.game.getDialogueFlags().tradePartner.getName("String_Node_Str") + "String_Node_Str"+ "String_Node_Str"+ com.base.utils.Colour.CURRENCY.toWebHexString()+ "String_Node_Str"+ Main.game.getCurrencySymbol()+ "String_Node_Str"+ ((int)(Main.game.getDialogueFlags().tradePartner.getSellModifier() * item.getValue()))+ "String_Node_Str"+ "String_Node_Str");
      }
    }
    Main.mainController.setTooltipContent(UtilText.parse(tooltipSB.toString()));
  }
 else   if (weapon != null || (coreItem instanceof AbstractWeapon)) {
    if (coreItem != null)     weapon=(AbstractWeapon)coreItem;
    weaponTooltip(weapon);
  }
 else   if (clothing != null || (coreItem instanceof AbstractClothing)) {
    if (coreItem != null)     clothing=(AbstractClothing)coreItem;
    clothingTooltip(clothing);
  }
 else   if (genericItem != null) {
    Main.mainController.setTooltipSize(360,60);
    Main.mainController.setTooltipContent(UtilText.parse("String_Node_Str" + Util.capitaliseSentence(genericItem.getName(false)) + "String_Node_Str"));
  }
 else   if (genericClothing != null) {
    Main.mainController.setTooltipSize(360,446);
    tooltipSB.setLength(0);
    tooltipSB.append("String_Node_Str" + genericClothing.getRarity().getColour().toWebHexString() + "String_Node_Str"+ Util.capitaliseSentence(genericClothing.getName())+ "String_Node_Str"+ "String_Node_Str"+ Util.capitaliseSentence(colour.getName())+ "String_Node_Str"+ "String_Node_Str"+ genericClothing.getSVGImage(colour)+ "String_Node_Str");
    Main.mainController.setTooltipContent(UtilText.parse(tooltipSB.toString()));
  }
 else   if (genericWeapon != null) {
    Main.mainController.setTooltipSize(360,446);
    tooltipSB.setLength(0);
    tooltipSB.append("String_Node_Str" + genericWeapon.getRarity().getColour().toWebHexString() + "String_Node_Str"+ Util.capitaliseSentence(genericWeapon.getName())+ "String_Node_Str"+ "String_Node_Str"+ Util.capitaliseSentence(dt.getName())+ "String_Node_Str"+ "String_Node_Str"+ genericWeapon.getSVGStringMap().get(dt)+ "String_Node_Str");
    Main.mainController.setTooltipContent(UtilText.parse(tooltipSB.toString()));
  }
 else   if (invSlot != null) {
    if (invSlot == InventorySlot.WEAPON_MAIN) {
      if (RenderingEngine.ENGINE.getCharactersInventoryToRender() != null) {
        if (RenderingEngine.ENGINE.getCharactersInventoryToRender().getMainWeapon() == null) {
          Main.mainController.setTooltipSize(360,60);
          Main.mainController.setTooltipContent("String_Node_Str");
        }
 else {
          weaponTooltip(RenderingEngine.ENGINE.getCharactersInventoryToRender().getMainWeapon());
        }
      }
 else {
        Main.mainController.setTooltipSize(360,60);
        Main.mainController.setTooltipContent("String_Node_Str");
      }
    }
 else     if (invSlot == InventorySlot.WEAPON_OFFHAND) {
      if (RenderingEngine.ENGINE.getCharactersInventoryToRender() != null) {
        if (RenderingEngine.ENGINE.getCharactersInventoryToRender().getOffhandWeapon() == null) {
          Main.mainController.setTooltipSize(360,60);
          Main.mainController.setTooltipContent("String_Node_Str");
        }
 else {
          weaponTooltip(RenderingEngine.ENGINE.getCharactersInventoryToRender().getOffhandWeapon());
        }
      }
 else {
        Main.mainController.setTooltipSize(360,60);
        Main.mainController.setTooltipContent("String_Node_Str");
      }
    }
 else {
      if (RenderingEngine.ENGINE.getCharactersInventoryToRender() != null) {
        if (RenderingEngine.ENGINE.getCharactersInventoryToRender().getClothingInSlot(invSlot) == null) {
          List<String> clothingBlockingThisSlot=new ArrayList<>();
          for (          AbstractClothing c : RenderingEngine.ENGINE.getCharactersInventoryToRender().getClothingCurrentlyEquipped())           if (c.getClothingType().getIncompatibleSlots().contains(invSlot))           clothingBlockingThisSlot.add(c.getName());
          if (!clothingBlockingThisSlot.isEmpty()) {
            setBlockedTooltipContent("String_Node_Str" + Colour.SEALED.toWebHexString() + "String_Node_Str"+ Util.stringsToStringList(clothingBlockingThisSlot,false)+ "String_Node_Str");
          }
 else           if (invSlot.slotBlockedByRace(equippedToCharacter) != null) {
            setBlockedTooltipContent(invSlot.getCannotBeWornDescription(equippedToCharacter));
          }
 else {
            boolean piercingBlocked=false;
switch (invSlot) {
case PIERCING_VAGINA:
              if (equippedToCharacter.getVaginaType() == VaginaType.NONE) {
                setBlockedTooltipContent("String_Node_Str");
                piercingBlocked=true;
              }
 else               if (!equippedToCharacter.isPiercedVagina()) {
                setBlockedTooltipContent("String_Node_Str");
                piercingBlocked=true;
              }
            break;
case PIERCING_EAR:
          if (!equippedToCharacter.isPiercedEar()) {
            setBlockedTooltipContent("String_Node_Str");
            piercingBlocked=true;
          }
        break;
case PIERCING_LIP:
      if (!equippedToCharacter.isPiercedLip()) {
        setBlockedTooltipContent("String_Node_Str");
        piercingBlocked=true;
      }
    break;
case PIERCING_NIPPLE:
  if (!equippedToCharacter.isPiercedNipple()) {
    setBlockedTooltipContent("String_Node_Str");
    piercingBlocked=true;
  }
break;
case PIERCING_NOSE:
if (!equippedToCharacter.isPiercedNose()) {
setBlockedTooltipContent("String_Node_Str");
piercingBlocked=true;
}
break;
case PIERCING_PENIS:
if (equippedToCharacter.getPenisType() == PenisType.NONE) {
setBlockedTooltipContent("String_Node_Str");
piercingBlocked=true;
}
 else if (!equippedToCharacter.isPiercedPenis()) {
setBlockedTooltipContent("String_Node_Str");
piercingBlocked=true;
}
break;
case PIERCING_STOMACH:
if (!equippedToCharacter.isPiercedNavel()) {
setBlockedTooltipContent("String_Node_Str");
piercingBlocked=true;
}
break;
case PIERCING_TONGUE:
if (!equippedToCharacter.isPiercedTongue()) {
setBlockedTooltipContent("String_Node_Str");
piercingBlocked=true;
}
break;
default :
break;
}
if (!piercingBlocked) {
Main.mainController.setTooltipSize(360,60);
Main.mainController.setTooltipContent(UtilText.parse("String_Node_Str" + Util.capitaliseSentence(invSlot.getName()) + "String_Node_Str"));
}
}
}
 else {
clothingTooltip(RenderingEngine.ENGINE.getCharactersInventoryToRender().getClothingInSlot(invSlot));
}
}
 else {
Main.mainController.setTooltipSize(360,60);
Main.mainController.setTooltipContent(UtilText.parse("String_Node_Str" + Util.capitaliseSentence(invSlot.getName()) + "String_Node_Str"));
}
}
}
 else if (enchantmentModifier != null) {
Main.mainController.setTooltipSize(360,174);
Main.mainController.setTooltipContent(UtilText.parse("String_Node_Str" + enchantmentModifier.getRarity().getColour().toWebHexString() + "String_Node_Str"+ Util.capitaliseSentence(enchantmentModifier.getName())+ "String_Node_Str"+ "String_Node_Str"+ UtilText.parse(enchantmentModifier.getDescription())+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ EnchantmentDialogue.ingredient.getRelatedEssence().getColour().toWebHexString()+ "String_Node_Str"+ enchantmentModifier.getValue()+ "String_Node_Str"+ EnchantmentDialogue.ingredient.getRelatedEssence().getName()+ "String_Node_Str"+ (enchantmentModifier.getValue() > 1 ? "String_Node_Str" : "String_Node_Str")+ "String_Node_Str"));
}
 else if (essence != null) {
Main.mainController.setTooltipSize(360,60);
Main.mainController.setTooltipContent(UtilText.parse("String_Node_Str" + essence.getColour().toWebHexString() + "String_Node_Str"+ Util.capitaliseSentence(essence.getName())+ "String_Node_Str"));
}
 else {
return;
}
(new Thread(new TooltipUpdateThread())).start();
}

Fixed version (ground truth):
@Override public void handleEvent(Event event){
  if (item != null || (coreItem instanceof AbstractItem)) {
    if (coreItem != null)     item=(AbstractItem)coreItem;
    int yIncrease=0;
    if (Main.game.getDialogueFlags().tradePartner != null) {
      yIncrease+=2;
    }
    if (item.getItemEffects().size() > 0) {
      for (      ItemEffect ie : item.getItemEffects()) {
        yIncrease+=ie.getEffectsDescription(Main.game.getPlayer(),Main.game.getPlayer()).size();
      }
    }
    Main.mainController.setTooltipSize(360,290 + (20 * yIncrease));
    tooltipSB.setLength(0);
    tooltipSB.append("String_Node_Str" + Util.capitaliseSentence(item.getDisplayName(true)) + "String_Node_Str");
    if (item.getItemEffects().size() > 0) {
      tooltipSB.append("String_Node_Str");
      int ieCount=0;
      for (      ItemEffect ie : item.getItemEffects()) {
        if (ieCount > 0)         tooltipSB.append("String_Node_Str");
        ieCount++;
        for (int i=0; i < ie.getEffectsDescription(Main.game.getPlayer(),Main.game.getPlayer()).size(); i++) {
          if (i != 0)           tooltipSB.append("String_Node_Str");
          tooltipSB.append(ie.getEffectsDescription(Main.game.getPlayer(),Main.game.getPlayer()).get(i));
        }
      }
      tooltipSB.append("String_Node_Str");
    }
    tooltipSB.append("String_Node_Str" + (item.isConsumedOnUse() ? "String_Node_Str" + Colour.GENERIC_BAD.toWebHexString() + "String_Node_Str" : "String_Node_Str" + Colour.GENERIC_GOOD.toWebHexString() + "String_Node_Str") + "String_Node_Str"+ "String_Node_Str"+ (item.isAbleToBeUsedInCombat() ? (item.isAbleToBeUsedInSex() ? "String_Node_Str" + Colour.GENERIC_COMBAT.toWebHexString() + "String_Node_Str"+ Colour.GENERIC_SEX.toWebHexString()+ "String_Node_Str" : "String_Node_Str" + Colour.GENERIC_COMBAT.toWebHexString() + "String_Node_Str") : (item.isAbleToBeUsedInSex() ? "String_Node_Str" + Colour.GENERIC_SEX.toWebHexString() + "String_Node_Str" : "String_Node_Str"))+ "String_Node_Str"+ "String_Node_Str"+ UtilText.parse(item.getDescription())+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ com.base.utils.Colour.CURRENCY.toWebHexString()+ "String_Node_Str"+ Main.game.getCurrencySymbol()+ "String_Node_Str"+ item.getValue()+ "String_Node_Str"+ "String_Node_Str");
    if (Main.game.getDialogueFlags().tradePartner != null) {
      if (owner.isPlayer()) {
        if (Main.game.getDialogueFlags().tradePartner.willBuy(item))         tooltipSB.append("String_Node_Str" + Main.game.getDialogueFlags().tradePartner.getName("String_Node_Str") + "String_Node_Str"+ "String_Node_Str"+ com.base.utils.Colour.CURRENCY.toWebHexString()+ "String_Node_Str"+ Main.game.getCurrencySymbol()+ "String_Node_Str"+ item.getPrice(Main.game.getDialogueFlags().tradePartner.getBuyModifier())+ "String_Node_Str"+ "String_Node_Str");
 else         tooltipSB.append("String_Node_Str" + "String_Node_Str" + Colour.TEXT_GREY.toWebHexString() + "String_Node_Str"+ Main.game.getDialogueFlags().tradePartner.getName("String_Node_Str")+ "String_Node_Str"+ "String_Node_Str");
      }
 else {
        if (InventoryDialogue.isBuyback()) {
          tooltipSB.append("String_Node_Str" + Main.game.getDialogueFlags().tradePartner.getName("String_Node_Str") + "String_Node_Str"+ "String_Node_Str"+ com.base.utils.Colour.CURRENCY.toWebHexString()+ "String_Node_Str"+ Main.game.getCurrencySymbol()+ "String_Node_Str"+ getBuybackPriceFor(item)+ "String_Node_Str"+ "String_Node_Str");
        }
 else {
          tooltipSB.append("String_Node_Str" + Main.game.getDialogueFlags().tradePartner.getName("String_Node_Str") + "String_Node_Str"+ "String_Node_Str"+ com.base.utils.Colour.CURRENCY.toWebHexString()+ "String_Node_Str"+ Main.game.getCurrencySymbol()+ "String_Node_Str"+ item.getPrice(Main.game.getDialogueFlags().tradePartner.getSellModifier())+ "String_Node_Str"+ "String_Node_Str");
        }
      }
    }
    Main.mainController.setTooltipContent(UtilText.parse(tooltipSB.toString()));
  }
 else   if (weapon != null || (coreItem instanceof AbstractWeapon)) {
    if (coreItem != null)     weapon=(AbstractWeapon)coreItem;
    weaponTooltip(weapon);
  }
 else   if (clothing != null || (coreItem instanceof AbstractClothing)) {
    if (coreItem != null)     clothing=(AbstractClothing)coreItem;
    clothingTooltip(clothing);
  }
 else   if (genericItem != null) {
    Main.mainController.setTooltipSize(360,60);
    Main.mainController.setTooltipContent(UtilText.parse("String_Node_Str" + Util.capitaliseSentence(genericItem.getName(false)) + "String_Node_Str"));
  }
 else   if (genericClothing != null) {
    Main.mainController.setTooltipSize(360,446);
    tooltipSB.setLength(0);
    tooltipSB.append("String_Node_Str" + genericClothing.getRarity().getColour().toWebHexString() + "String_Node_Str"+ Util.capitaliseSentence(genericClothing.getName())+ "String_Node_Str"+ "String_Node_Str"+ Util.capitaliseSentence(colour.getName())+ "String_Node_Str"+ "String_Node_Str"+ genericClothing.getSVGImage(colour)+ "String_Node_Str");
    Main.mainController.setTooltipContent(UtilText.parse(tooltipSB.toString()));
  }
 else   if (genericWeapon != null) {
    Main.mainController.setTooltipSize(360,446);
    tooltipSB.setLength(0);
    tooltipSB.append("String_Node_Str" + genericWeapon.getRarity().getColour().toWebHexString() + "String_Node_Str"+ Util.capitaliseSentence(genericWeapon.getName())+ "String_Node_Str"+ "String_Node_Str"+ Util.capitaliseSentence(dt.getName())+ "String_Node_Str"+ "String_Node_Str"+ genericWeapon.getSVGStringMap().get(dt)+ "String_Node_Str");
    Main.mainController.setTooltipContent(UtilText.parse(tooltipSB.toString()));
  }
 else   if (invSlot != null) {
    if (invSlot == InventorySlot.WEAPON_MAIN) {
      if (RenderingEngine.ENGINE.getCharactersInventoryToRender() != null) {
        if (RenderingEngine.ENGINE.getCharactersInventoryToRender().getMainWeapon() == null) {
          Main.mainController.setTooltipSize(360,60);
          Main.mainController.setTooltipContent("String_Node_Str");
        }
 else {
          weaponTooltip(RenderingEngine.ENGINE.getCharactersInventoryToRender().getMainWeapon());
        }
      }
 else {
        Main.mainController.setTooltipSize(360,60);
        Main.mainController.setTooltipContent("String_Node_Str");
      }
    }
 else     if (invSlot == InventorySlot.WEAPON_OFFHAND) {
      if (RenderingEngine.ENGINE.getCharactersInventoryToRender() != null) {
        if (RenderingEngine.ENGINE.getCharactersInventoryToRender().getOffhandWeapon() == null) {
          Main.mainController.setTooltipSize(360,60);
          Main.mainController.setTooltipContent("String_Node_Str");
        }
 else {
          weaponTooltip(RenderingEngine.ENGINE.getCharactersInventoryToRender().getOffhandWeapon());
        }
      }
 else {
        Main.mainController.setTooltipSize(360,60);
        Main.mainController.setTooltipContent("String_Node_Str");
      }
    }
 else {
      if (RenderingEngine.ENGINE.getCharactersInventoryToRender() != null) {
        if (RenderingEngine.ENGINE.getCharactersInventoryToRender().getClothingInSlot(invSlot) == null) {
          List<String> clothingBlockingThisSlot=new ArrayList<>();
          for (          AbstractClothing c : RenderingEngine.ENGINE.getCharactersInventoryToRender().getClothingCurrentlyEquipped())           if (c.getClothingType().getIncompatibleSlots().contains(invSlot))           clothingBlockingThisSlot.add(c.getName());
          if (!clothingBlockingThisSlot.isEmpty()) {
            setBlockedTooltipContent("String_Node_Str" + Colour.SEALED.toWebHexString() + "String_Node_Str"+ Util.stringsToStringList(clothingBlockingThisSlot,false)+ "String_Node_Str");
          }
 else           if (invSlot.slotBlockedByRace(equippedToCharacter) != null) {
            setBlockedTooltipContent(invSlot.getCannotBeWornDescription(equippedToCharacter));
          }
 else {
            boolean piercingBlocked=false;
switch (invSlot) {
case PIERCING_VAGINA:
              if (equippedToCharacter.getVaginaType() == VaginaType.NONE) {
                setBlockedTooltipContent("String_Node_Str");
                piercingBlocked=true;
              }
 else               if (!equippedToCharacter.isPiercedVagina()) {
                setBlockedTooltipContent("String_Node_Str");
                piercingBlocked=true;
              }
            break;
case PIERCING_EAR:
          if (!equippedToCharacter.isPiercedEar()) {
            setBlockedTooltipContent("String_Node_Str");
            piercingBlocked=true;
          }
        break;
case PIERCING_LIP:
      if (!equippedToCharacter.isPiercedLip()) {
        setBlockedTooltipContent("String_Node_Str");
        piercingBlocked=true;
      }
    break;
case PIERCING_NIPPLE:
  if (!equippedToCharacter.isPiercedNipple()) {
    setBlockedTooltipContent("String_Node_Str");
    piercingBlocked=true;
  }
break;
case PIERCING_NOSE:
if (!equippedToCharacter.isPiercedNose()) {
setBlockedTooltipContent("String_Node_Str");
piercingBlocked=true;
}
break;
case PIERCING_PENIS:
if (equippedToCharacter.getPenisType() == PenisType.NONE) {
setBlockedTooltipContent("String_Node_Str");
piercingBlocked=true;
}
 else if (!equippedToCharacter.isPiercedPenis()) {
setBlockedTooltipContent("String_Node_Str");
piercingBlocked=true;
}
break;
case PIERCING_STOMACH:
if (!equippedToCharacter.isPiercedNavel()) {
setBlockedTooltipContent("String_Node_Str");
piercingBlocked=true;
}
break;
case PIERCING_TONGUE:
if (!equippedToCharacter.isPiercedTongue()) {
setBlockedTooltipContent("String_Node_Str");
piercingBlocked=true;
}
break;
default :
break;
}
if (!piercingBlocked) {
Main.mainController.setTooltipSize(360,60);
Main.mainController.setTooltipContent(UtilText.parse("String_Node_Str" + Util.capitaliseSentence(invSlot.getName()) + "String_Node_Str"));
}
}
}
 else {
clothingTooltip(RenderingEngine.ENGINE.getCharactersInventoryToRender().getClothingInSlot(invSlot));
}
}
 else {
Main.mainController.setTooltipSize(360,60);
Main.mainController.setTooltipContent(UtilText.parse("String_Node_Str" + Util.capitaliseSentence(invSlot.getName()) + "String_Node_Str"));
}
}
}
 else if (enchantmentModifier != null) {
Main.mainController.setTooltipSize(360,174);
Main.mainController.setTooltipContent(UtilText.parse("String_Node_Str" + enchantmentModifier.getRarity().getColour().toWebHexString() + "String_Node_Str"+ Util.capitaliseSentence(enchantmentModifier.getName())+ "String_Node_Str"+ "String_Node_Str"+ UtilText.parse(enchantmentModifier.getDescription())+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ EnchantmentDialogue.ingredient.getRelatedEssence().getColour().toWebHexString()+ "String_Node_Str"+ enchantmentModifier.getValue()+ "String_Node_Str"+ EnchantmentDialogue.ingredient.getRelatedEssence().getName()+ "String_Node_Str"+ (enchantmentModifier.getValue() > 1 ? "String_Node_Str" : "String_Node_Str")+ "String_Node_Str"));
}
 else if (essence != null) {
Main.mainController.setTooltipSize(360,60);
Main.mainController.setTooltipContent(UtilText.parse("String_Node_Str" + essence.getColour().toWebHexString() + "String_Node_Str"+ Util.capitaliseSentence(essence.getName())+ "String_Node_Str"));
}
 else {
return;
}
(new Thread(new TooltipUpdateThread())).start();
}