public void drawBaseStringMoveXY( String string, int drawX, int drawY, int[] xModifier, int[] yModifier) { drawY -= baseCharacterHeight; int startIndex = -1; int i_96_ = -1; int modifierOffset = 0; for (int currentCharacter = 0; currentCharacter < string.length(); currentCharacter++) { int character = string.charAt(currentCharacter); if (character == 60) { startIndex = currentCharacter; } else { if (character == 62 && startIndex != -1) { String effectString = string.substring(startIndex + 1, currentCharacter); startIndex = -1; if (effectString.equals(startEffect)) { character = 60; } else if (effectString.equals(endEffect)) { character = 62; } else if (effectString.equals(aRSString_4135)) { character = 160; } else if (effectString.equals(aRSString_4162)) { character = 173; } else if (effectString.equals(aRSString_4165)) { character = 215; } else if (effectString.equals(aRSString_4147)) { character = 128; } else if (effectString.equals(aRSString_4163)) { character = 169; } else if (effectString.equals(aRSString_4169)) { character = 174; } else { if (effectString.startsWith(startImage)) { try { int xModI; if (xModifier != null) { xModI = xModifier[modifierOffset]; } else { xModI = 0; } int yMod; if (yModifier != null) { yMod = yModifier[modifierOffset]; } else { yMod = 0; } modifierOffset++; int iconId = Integer.valueOf(effectString.substring(4)); Sprite class92 = chatImages[iconId]; int iconOffsetY = class92.maxHeight; if (transparency == 256) { class92.drawSprite( drawX + xModI, (drawY + baseCharacterHeight - iconOffsetY + yMod)); } else { class92.drawTransparentSprite( drawX + xModI, (drawY + baseCharacterHeight - iconOffsetY + yMod), transparency); } drawX += class92.maxWidth; i_96_ = -1; } catch (Exception exception) { /* empty */ } } else { setTextEffects(effectString); } continue; } } if (startIndex == -1) { int width = characterWidths[character]; int height = characterHeights[character]; int xOff; if (xModifier != null) { xOff = xModifier[modifierOffset]; } else { xOff = 0; } int yOff; if (yModifier != null) { yOff = yModifier[modifierOffset]; } else { yOff = 0; } modifierOffset++; if (character != 32) { if (transparency == 256) { if (textShadowColor != -1) { drawCharacter( character, (drawX + characterDrawXOffsets[character] + 1 + xOff), (drawY + characterDrawYOffsets[character] + 1 + yOff), width, height, textShadowColor, true); } drawCharacter( character, drawX + characterDrawXOffsets[character] + xOff, drawY + characterDrawYOffsets[character] + yOff, width, height, textColor, false); } else { if (textShadowColor != -1) { drawTransparentCharacter( character, (drawX + characterDrawXOffsets[character] + 1 + xOff), (drawY + characterDrawYOffsets[character] + 1 + yOff), width, height, textShadowColor, transparency, true); } drawTransparentCharacter( character, drawX + characterDrawXOffsets[character] + xOff, drawY + characterDrawYOffsets[character] + yOff, width, height, textColor, transparency, false); } } else if (anInt4178 > 0) { anInt4175 += anInt4178; drawX += anInt4175 >> 8; anInt4175 &= 0xff; } int i_109_ = characterScreenWidths[character]; if (strikethroughColor != -1) { drawHorizontalLine( drawX, drawY + (int) ((double) baseCharacterHeight * 0.7), i_109_, strikethroughColor); } if (underlineColor != -1) { drawHorizontalLine(drawX, drawY + baseCharacterHeight, i_109_, underlineColor); } drawX += i_109_; i_96_ = character; } } } }
public void drawBasicString(String string, int drawX, int drawY) { drawY -= baseCharacterHeight; int startIndex = -1; int i_70_ = -1; for (int currentCharacter = 0; currentCharacter < string.length(); currentCharacter++) { int character = string.charAt(currentCharacter); if (character > 255) { character = 32; } if (character == 60) { startIndex = currentCharacter; } else { if (character == 62 && startIndex != -1) { String effectString = string.substring(startIndex + 1, currentCharacter); startIndex = -1; if (effectString.equals(startEffect)) { character = 60; } else if (effectString.equals(endEffect)) { character = 62; } else if (effectString.equals(aRSString_4135)) { character = 160; } else if (effectString.equals(aRSString_4162)) { character = 173; } else if (effectString.equals(aRSString_4165)) { character = 215; } else if (effectString.equals(aRSString_4147)) { character = 128; } else if (effectString.equals(aRSString_4163)) { character = 169; } else if (effectString.equals(aRSString_4169)) { character = 174; } else { if (effectString.startsWith(startImage)) { try { int imageId = Integer.valueOf(effectString.substring(4)); Sprite icon = chatImages[imageId]; int iconModY = icon.maxHeight; if (transparency == 256) { icon.drawSprite(drawX, (drawY + baseCharacterHeight - iconModY)); } else { icon.drawTransparentSprite( drawX, (drawY + baseCharacterHeight - iconModY), transparency); } drawX += icon.maxWidth; i_70_ = -1; } catch (Exception exception) { /* empty */ } } else { setTextEffects(effectString); } continue; } } if (startIndex == -1) { int width = characterWidths[character]; int height = characterHeights[character]; if (character != 32) { if (transparency == 256) { if (textShadowColor != -1) { drawCharacter( character, drawX + characterDrawXOffsets[character] + 1, drawY + characterDrawYOffsets[character] + 1, width, height, textShadowColor, true); } drawCharacter( character, drawX + characterDrawXOffsets[character], drawY + characterDrawYOffsets[character], width, height, textColor, false); } else { if (textShadowColor != -1) { drawTransparentCharacter( character, drawX + characterDrawXOffsets[character] + 1, drawY + characterDrawYOffsets[character] + 1, width, height, textShadowColor, transparency, true); } drawTransparentCharacter( character, drawX + characterDrawXOffsets[character], drawY + characterDrawYOffsets[character], width, height, textColor, transparency, false); } } else if (anInt4178 > 0) { anInt4175 += anInt4178; drawX += anInt4175 >> 8; anInt4175 &= 0xff; } int lineWidth = characterScreenWidths[character]; if (strikethroughColor != -1) { drawHorizontalLine( drawX, drawY + (int) ((double) baseCharacterHeight * 0.69999999999999996D), lineWidth, strikethroughColor); } if (underlineColor != -1) { drawHorizontalLine(drawX, drawY + baseCharacterHeight, lineWidth, underlineColor); } drawX += lineWidth; i_70_ = character; } } } }